another brilliant idea BAck To The Start Page
'''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,..,,,,,,,,,,.,,,,,,,:::;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''++++++++++++++++++++++++++++++++++++++++++
'''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::,,,,,,,,,,,,,,,,..,,,,,,,:::;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''+++++++++++++++++++++++++++++++++++++++++
''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,.,,,,,,,,,,,,,,,,,:::;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''++++++++++++++++++++++++++++++++++++++++
'''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,..........,,,,,,,,::::;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''+++++++++++++++++++++++++++++++++++++++
'''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::,,,,,,,::::::::::,,,,,,,,:::;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''++++++++++++++++++++++++++++++++++++++
'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,:;'+++++++++'''';;;;:::::;;;''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;'''''';;;'''+++++++++++++++++++++++++++++++++++++
'''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::;''++'''';;;;;'''''''';;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;'''''''+++++++++++++++++++++++++++++++++
''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::;'''';;;;:::;;;;;;;;;;;;''';''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;'''''''''++++++++++++++++++++++++++++++
'';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::;;;;:;;;:::::::,,,,,,:::::;''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;'''''''''''++++++++++++++++++++++++++++
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::,,,,,,,,,,,,,,::;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;''''''''''''+++++++++++++++++++++++++++
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,::::::::::::,,,,...,,,,,,,,,,,::;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;''''''''''''''''+++++++++++++++++++++++
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,::::::::::,,,.....,,,,,,,,,,,,::::;;;''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;::::::;;;''''''''''''''''++++++++++++++++++++++
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,:::::::::,,,......,.,,,,,,,,,,,,:::;;;;''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;:::::::;;;'''''''''''''''''+++++++++''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,.........,,,,,,,,,,,,:::;;;;'''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;::::::;;;;''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,........,,,,,,,,,,,,,::::;;;;;;'''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,........,,,,,,,,,,,,,,:::::;;;;;'''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;'''''''''''''++''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,..........,,,,,,,,,,,,,,:::::;;;:;;;''+'''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;'''''''''''''+++'''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,:,,,,,,,,,.....``.......,,,,,,,,,,,:::::;;::::;;'''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;''''''''''''''+++'''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,::,,,,,,,,,..`.```....,,,,,,,,,,,,::::;;;;::::::;'''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;'''''''''''''''++'''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,,,::::,,,,,,,,.....````.....,,,::::::::::;;;;;::::::;''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,::::::,,,,,,,,....,,,,......,,:::::::::;;;;:;;:::::;''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,::,::,,:,,,,,,,,,............,,::::::;;;;;;;;;::::::;'''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,,..,:::,:::::,,,,,,,,..,,:,........,,::::;;;;;;;;;;::,,,::'''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,,,,..,::::::::::::,,,,,:,,,::::,,,...,,,,::;;;;;;;;::::,,,,:;'''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;''''''''''+''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,..,::::::::::::::,,,,,,,,,,,,..,,,,,,,,::;;;:::::,,,,.,,,:'''''''''''''''''''''''''''''''''''''''''';;;;;;;;'''''''''''+++''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,..,,:::;::::::::::,,:,,,,,,::,:,,...,,,::::::,,,,,,,,,,,,,:;''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;'''''''''''++'''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,...,,...,,:;;;;:::::::::,,:::::,,,,,,,::,,,:::,,::;:::,,,,,,,,,,,;'''''''''''''''''''''''''''''''''''';;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,....,,,.,,:;;;;;;::::::::,::::,,,,:;:::,,:;:,,:::::,:::::::;:::,,,:''''''''''''''''''''''''''''''''''';;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,......,,,,,,:;;;;;;;;;;::::::::::::::::::::,,::::;;;::,,,,,,,,::::,,:''''''''''''''''''''''''''''''''''';;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,....,,,.,,,,,,,:;;;;;;;;;::::::::::,,,:::::::::::,,::;;;;;;;;;::::;:::,:;''''''''''''''''''''''''''''''';;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,......,,,.,,,,,::;;;;;;;;:::::::::::::::;;;;;;;::;';:,,,,,,,:::::;:;:::,:;''''''''''''''''''''''''''''';;;;;;;;;;;;;;'''''''''++''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::,,,,,,,,,,,,......,.,,,,,,::;;;';;;:::::::::::,,...:;';;;'';;;;''';;;;;;;::::;;;::::;'''''''''''''''''''''''''''';;;;;;;;;;;;;;;'''''''''+'''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,...,...,,,,,,,:::;;;;'';;;::::::::,:;'';,..,;;;;;;;';;;'';;;;;;;;;'';;;;::;'''''''''''''''''''''''''''';;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,...,,..,,,,,,::::;;;;';;;;:::::::::'++++';,..,:;;::;;;:,:;;;;;;;;::;;;;:::;''''''''''''''''''''''''''';;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,;;;;';;;;:::::::;'+###+#++;:,,,:;;:;'+'+++'''''''''';;:;;;'''''''''''''''''''''''''';;;;;;;;;;;;;;;;'''''''''+''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,::,,.`.:;;;'';;::::::::;++++#####++':,,:::::'';;;;::::;;;;'';;;;;'''''''''''''''''''''''';;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::,..,:;;;;:::::::::;++''+#+#####++;::;:;;:::::::::::::;;;;';'''''''''''''''''''''''';;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;+;,..,:;;::::::::::;;;'''''+#######+';;;;;;::,,,,,,,,::;;;''''''''''''''''''''''''';;;;;;;;;;;;;;;;;''''''''+''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,:::;;;;;';:,,,::::::::::::;;:;;;;'''''+#####+;;;::;';;;;;;;''';;;;'''''''''''''''''''''''';;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,::;;;';;;::::,,:::::::::::::::;;;;'''+++++##++';:;;;'++##++++++'';;''''''''''''''''''''''';;;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;'''';;,`.,,,,,:::::::::::;;;;;''+++++++++++';;;;'+##########+';''''''''''''''''''''''';;;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,::;;;;''''';:,,:;:,,,::::::::::;;'''++++++++++++++';;;''+######++++'';'''''''''''''''''''''';;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::;;;''''''';::;'';,,,,::::::,,:;''++';;'++###++++''''''+++++''''''''';'''''''''''''''''''';;;;;;;;;;;;;;;;;;;'''''''''+''''''''''''''''''''''''''''''''''''''''+++''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;;''''''''::;+++;,,,,,,,,,,,,:;''+++''+++###++++'''''''+++++''''';;;''''''''''''''''''''';;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''+++''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;;''''''''''::;'+;,,,,,,,,,,,:::;''++++##@####++++'''''''++###++'';;;;;'''''''''''''''''';;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::;;;'''''''''''':,:;;:.,,,,,,,,,,:::;;'''''+##@####++';;;;''+##+##+++'';::;;''''''''''''''''';;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;;'''''''''''''';,,::,,,,,,,,,,,,,::::;''''+######+++';:::;+######++++';::;'''''''''''''''';;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::;;;;''''''''''''''':,,,,,:,:::::,,,,,::::;;'''++++++++'';:,,:;+##+######+';;;'''''''''''''''';;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;;''''''''''''''''':,...,,:::::::,,,,,,:::;;'++++++++'';:,..:'+#++###+##+;::;''''''''''''''';;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;;;''''''''''''''''':.....,,,::::::,,,,,,,,::;'+++++''';::,,,:;++++##++++';::;''''''''''''';;;;;;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::;;;;'''''''''''''''''''':,..,,,,,:::::::::,,,,,,,:;''''';;;::,,,,:;++++#+++'';;:;;''''''''''''';;;;;;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;''''''''''''''''''''''';:,:::,,,:::::::::::,,,,,::;;;';:::::,,,,:;+++++++'';;;:;;'''''''''''';;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;''''''''''''''''''''''''';;;;:,,,:::::::::::::::::;;;;:::::::,,,::;'+++''''';;:::;''''''''''';;;;;;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;''''''''''''''''''''''''''''';;:::,,,:::::::::::;;;;;;;;::::::::,,:::;'''''';;;::::;;''''''''''';;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;;''''''''''''''''''''''''''''''';:::,,,::::::::;;;;;;;;;;:::;::::,,,,:;;;''''';::::::;'''''''''';;;;;;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;'''''''''''+''''''''''''''''''''';,,:,,::::::::;;;;;;;;:::::;;;::,,,,,:;';;'';;;::::::;''''''''';;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''''''''''''''''+''''+++'''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;;'''''''+''''''''''''''''''''''''':,,,,,:::::;;;;;;;;;;;:::::;;:,,,..,,:;;';;''';;;::::;'''''''';;;;;;;;;;;;;;;;;;;;;;''''''''''''''';''''''''''';'++''''''+++''+'''++''''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,::::;;''''''''''''''+''''''''''''''''''''';:,,,,,::::;;;;;;;';;;;::::;';:,,,..,,::;;;;'''';;;;:;;''''''';;;;;;;;;;;;;;;;;;;;;;;'''''''''''';;''''''''''''''''''''''''''''++++''+''++''+''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;'';;;:::,,,,,,,,;'++''''''''''''''''''';,,,,,,::::;;''''''';;:::::;';:,,,,,,,::;;;;;''';;;;;;'''''';;;;;;;;;;;;;;;;;;;;;;;'''''''''''''''''''''''''''''';,,,````````.,::'++++'''''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,:::;;;:,..````        `,;'''''''''''''''''''';,,,,,,:::;;;''''''';;:::::;':,..,::::::;;;;;;;;;;;;;;''''';;;;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''+':`              ``.,,:'++'''''''''''''''''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;::,..```...........``.,::::;''''''''''''''';,.,,,::::;;'''''''';;;:::::;:,,,,:;::::;;;;;;;;';;;;''''';;;;;;;;;;:::;;;;;;;;;;;''''''''''''''''';;''+';:,:;;,  ``             `` `.:;'+'''''''''''''';
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;:,.````......,,,,,,,...``````.,:;;''''''';''':,.,,:::::;;''''''';;;;:::::;;;';;;;;;;;:::;;;;'';;;;''''';;;;;;;;;:::::;;;;;;;;;'''''''''''''''';;''+';,.   ````                ```   `,;'+'''''''''';;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;:,.```....,,,,,,,,,,:,,,...`.````..,::;'''''''':,.,,::::;;;'''''';;;;;::::::'+#+'''''';::::;;;'';;;;'''';;;;;;::;;::::;;;;;;;;;;''''''''''''''''''';;,`            `            ```     `:'+''''''';;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;::,.````..,,,,,,,::::::::::,,........````.,:;'''';:..,,:::;;;;''''';;;:::::::::;+##++''''';::::;;''';;'''';;;;;;;:::;::::;;;;;;;;;''''''''''''''''''';:`             ```           `.`   ``  .;+'''';;;;;::
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::;;,.````....,,,,,,,:::::::;;;:::::,......``````.,,::,,..,::::;;;;'''';;;::::::::::;''+#+++++':::::;''';;'''';;;;;;;:::::::;;;;;;;;;;'''''''''''';;''''';.                 ````       ````     `  `,;'';;;;:;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,::;:,.````.....,,,,,,::::::::::;;;;;;;:,........```...,....,,::::;;;;;';;;;;::;:::::,,::;'+++++';:,::;;''';;;'';;;;;;;;::::::::::;;;;;;;'''''''''''''';'+',`                  `````       ```          .:;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,::::,,.````.....,,,,,,::::::::;;;;;;;;;;;::,........,,,,....,,,,:::;;;;;;;;;;:::::::::::,,,:;'+'';:,:::;;''';;;;;;;;;;;;:::::::::::;;;;;'''''''''''''''''';,`  `                  `..`      ```           `,;;;:::::
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,:::;:,.``````....,,,,,,,,:::::::::;;;;;;;;;;;;;:,......,,,,,..,,,,:::;;;;;;;;::::::::::::::,,,:;'';;;:::;;;;''';;;;;;;;::::::::::::;;;;;;;;''''''''''''''''+;.                        `.`       ```        `  `:;;:::::
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;,.````````...,,,,,,,,,,,,,,,:::::;;;;;;;;'';;:,,....``..,.....,:::;;;;;;::::::::::,,,,:,,:::;'';;;::::;;;'';;;;;;;::::::::::::::;;;;;;;''''''''''''''''';.  `                      `,.        ```           `:;;;:::
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::;;:.`````..`.....,,,,,,,,,,,.,,,,,::::;;;;;;''''';::,...``..,....,,,::;;;;;;:::,,,,,,,,,:::::::::;;:;;;:::;;;'';;;;;:::::::::::::::::;;;;;''''''''''''';''';.      `                 ` `..         `.            :;;:::;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::;::,.```..``.......,,,............,,,,::::;;;;;;'''';;:,......,,..,,,,,:;;;;;;:::,,,,,,:::;;::::,,,,:,:;;::;;;;';;;;;;:::::::::::::::;;;;;;''''''''''''''''';,``   `                     `.`          .`           ,;;::::
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::::;;,`````..``.......,,.................,,,:::;;;';;'''';;:,,,,,,.,,,,,,,,:;;;;;;;::::,,,,::;;;::,,::;;:::;;::;;;;;;;;;;:::::::::::::::;;;;;;;''''''''''';''''',     `.``                   ..`          ```       `  `;';:::
;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;;:,.``.....``.......,....................,,,::;;;;';;;'';;:,,,,..,,,.,,,:::;;;;;:::::::::;;'';;;;'++++'';::;;:;;;;;;:::::::::::::::::;;;;;;'''''''''''''''''+:`   `.:;;.`                  ..            `,` `        .';:;:
;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::;;;;',.``.```````..............................,,,::;;;'';;''';;::,,,,,,,.,,,,,::;;;;;;;:::::;'''++'+########';;;::;;;;;;;:::::::::::::::;;;;;;'''''''''''''''''+;.   .:+++',.``               `..           ` `.          `;':::
;;;;;;;;;;;;;;;;;;;;;;::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::;;;;'';,````````````...............................,,,::;;;'''''''';::,,.,,,,,,,,,:::;;;;;;;;;::;''''''++#######+';;:;;;;;:::::;::::::::::::;;;;;;'''''''''''''''+'',  ``,'##+',...               `.`           `  :,         `:+;,,
;;;;;;;;;;;;;;;;;;::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;''''',  `.``...``........................`..,,,,,,,,,:::;;;;''''''';::,..,::,,:::::::::;;;;;;;;;'''+'''''+#####+'';:;;;;::::::::::::::::::;;;;;'''''''''''''''''+';` ``,;''+#+:,,.               `.`         `` ``.'.         .'',.
;;;;;;;;;;;;;;;:::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::;;;''''':``.```.....................,,.,,,......,,::::,,,,:::::;;;''''''';::,,,:::::;:::::::;;;;;;;;;'''++++++++++++++';;:;;::::;:::::::::::::;;;;;''''''''''''''''''+', `.``..,'#+;,,,`              `.     ```````    ;: `        :#;`
;;;;;;;;;;:::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;;;;'''+',``.````............,.....,,,,,,,,,..,,::,,::::::::::::::;;;''''''';;:;;;;;;:;;;;;;;;;;;;;;;;''''++++++++'''''''';;;;::,,:::::::::::::;;;;;'''''''''''''''''+'+;` .`    .;+#+::,`              `,     ``````.`   ,+.       ` `++.
;;;;;;;;::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;;;'''';;,...````...`.......,,,,,,,,,,,,,,,,,,,,,;'':::::::::::::::::;;;''''''';:;;''';;;;;;;;;;;;;;;;;;''''+++++++++++''''';;;;;:,..,::::::::::;;;;;''''''''''''''''''''',````    `,'#+;;:`              .:`     ``.....`` `+;  `    `  :+:
;;::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::;;;';'''';,.````.....``......,,,,,,,,,,,,,,,,,,,,,,,:;'';::,::::::::::::::;;;''''';;;:;''''';;;;;;;;;;;;;;;;;'''++++###++++++''';;;;;:,,.,,,::::::::;;;;''''''''''''''''''''+;` .       .'@++';`             `.:.`   `..,,,,,.   '+`      `  `''
::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::;:;;;;'''';,.``,:,`.,:,........,.....,,,,,,,,,,,,,,,,,,:;;''';:,,:;;:;;::::::::;;;'++';;;:::;'++'''';;;;;;;;;;;;;;''''++###+++++''';;;;:::::,..,:::::::;;;'''''''''''''''''''''++, `` `     .;###+:`            ` ,+;   `.,..,,..`   '#.        ` .+
::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::;;;;''''';';,`` `.,:,..,::.......,,,,,,:::::::,,,,:,,,,,::;;;''';;:::;;;;;:::::::::;;''++';;::::;;''''';;;;;;;;;;;;;''''++++++++++''';;;::,,:::,..,::;;:;;;;'''''''''''''''''''''+'. `        .;@##',`            ` :#+   ``.` `` `  ` ;+,          `;
::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::;;;;'''''''';,`    ``,:,..,:,..,,:::;;'''''''';;;:,,,:::,,::;;;;'''';::;;;;;;::::::::::;;'++'';:::;;;'''';;'';;;;;;;;''''''+++++++'''';;;:,,,,.......,::;;;;''''''''''''''''''''''+':```     `  `;@##;. `  `      ``  :@#.  ```     ``   .:.        `  .
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::;;;;'''''''''''.````   `.,,,.,:::,::;;''''+++++++++'';:,:;;::::;;;;;'''';:::;;;;:::::,,,,:::;'''';;;'+#'+++'''''''';;;''''''''++++++''';;;;;:,,,,........,:;;;'''''''''''''''''''''''+', `         .;##+:` `       ````` :#@'`              .:,           `
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::;;;;;'''''''''''+',````    `.,,...,';;:;;'''''''+++++++++++';;;;;;;;;;;;''''';:::;;::,,:,,,:,::::;'+++;;;'+#++++++'+'''''''''''''''++++'''';;'';:,............,:;''''''''''''''''''''''''+;.``         .,,;;,` ``     ```````,'##,` ``     `  `.;#;```   `  `  
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::;;;;;;''''''''''''',```      .,:,,,,:;';;;;;;'''+++++++++####++'';;;;;;;';;;'+''';:,:,,,,,,,,,,,:::;'''+';;'+++++++++++''''''''''''''''''''''';'';:...,,..,,,,,....,:''''''''''''''''''''''+;``  ` `     ,,`.,.`````   `````` `.:@#'.```   ` ` ``,+@'````  `  ```
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,:::::::;;;;'''''''''''''''+;.````  `  ``.,,,:,,:;'';;;''+++++##########+#++';;;;;;;;;;;'''';,,,,,,,,,.,,,,,,,::;'+++';+++++++###++++'''''''''''''''''''';;;:,,,,:;;'';;;;::,...:;'''''''''''''''''+''+:`` `  `    .'':,.``````````````` `.:@#@;.``````````,;#@'.```  `     
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::;;;;;;''''''''''''''''';,` ` `  `  ...,::::::;''';;''+++++#############++';;;;;;;;';;;;:..,,....,,,::;;:;;:::;'+#+''+++'''+###+++++++++''''''++''''''';;:::::;'+++++++'':,...,;''''''''''''''''+''+,`` ` `  `  ,+#;,.`````````````````.;#@@+;,...```..,;###'.```` `   ``
,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::;;;;;'''''''''''''''''''+;.````      `...,:::;:::;'''''+++#################+'';;::::;;;;:,.,::,..,:;''+++++++++'''++++';'++''++####+++++++'''''''''''+''';;;;:::;'++++++++++':,,.,:;''''''''''''''''''.``` ``  ```;#',.````````````````.``:+@#@#+;:,,,,:;'+#@#;.```````````
,,,,,,,,,,,,,,,,,,,,,,::::::::;;;;;'''''''''''''''''''''+;,` `      ``....,::;;;;::;''''+++#################++';;::;;::;:,..:;;,,:;''++''''++++++++++##+'''+++++########+++''''''+''++++';;;::;;;;;''++++++++';:;:,,:;''''''''''+'+''+;.``` `` ` `:+':..```````````````````,;@@@@##++'''+####@#;.```````````
,,,,,,,,,,,,,,,,,,::::::::;;;;;'''''''''''''''''''''''''',`     `   `...,..,:;;;;;;;;'++++####################+';;;;;;:,..,:;;:,:;;;;;;;;;;;;;'''+++####+';;'++++##########+++++++####+';;;;;;'''''''++++++++++':;;;,.:''+'''''+''+''+:.````` `. ,'+:.....```````````````.`.:#@@#@@@#@####@@#@+:````````````
,,,,,,,,,,,,,:::::::::;;;;;;'''''''''''''''''''''''''''',`      `  `....,..,:;;;;;';;'+#++#####################+''';;:,.,;'++';::,,,,,:::::::;;;;''+#+++#+''''+#+#######@@###########+';;;;;'+++++++++++++++++++;;''':,,;'''''''''+''+:..` ````..;+;......``````````````.....'#@#@@@@@@@@@@@@#'.````````````
,,,,,,,,,,:::::::::;;;;;;''''''''''''''''''''''''''''';:`  `      `..,..,,,,::;';;;'''+++#############@@########+';;:,,;++###++++';;:,,,,:::;;;:;;;'';::;'++'''++###################+';;'''++###+++++++++++++++'+;;'++:,.,;+''''''+''+:..` `````;';,...`.```````````````.`..`:'#@@@@@#@@@@@@#+:`````````````
,,,,,,,,::::::::;;;;;'''''''''''''''''''''''''''''''+',`         ``.....,,,,,::;'''''+++#########@@@@@@@@#######+';::,;####++###++++++';:,,,:,:::::::::;;''''+''++++###############+''''++####++#+++++++++++''''';;;'+';:,:'''''''+''+:.``````,:;;,.......``````````````.`..`.:'##@@@##@@#@#+;..`.``````````
,,::::::::::;;;;;'''''''''''''''''''''''''''''''''''':`       ``........,,,,,,,:;'''''+#########@#@@@@@@@@@@#####+'::'+++#####++###++#++';:,:::;:::,:;+++++'+++++++++###########+++'''++####++++#++++'''''''''''+';;;'+'';,,''''''+''';,`````,;':,........````````````.`.......:'+#@@##@@##';,```.``````````
::::::;;;;;;;;'''''''''''''''''''''''''''''''''''''':`       ``.,::,.....,:,,,,,:;'';'++########@@@@@@@@@@@@#####+;:;##++##++##+#++##+++'';;;;;:::,,,'+'+++++''+++++++#######+++++++######+++++++''''';;;;;;''''++';;;'+;':.;''''''''';,.``.:;;:,``....`.``````.```...`.......`.,;'+++##++':..`...``..`.````
:::;;;;;;;''''''''''''''''''''''''''''''''''''''';';````````.....,::::,,,..,:,,:,;;''''++#######@@@@@@@@@@@######+''+##+#######++++++++++++';:;;;,,:;'+'++''++++++++++++++++++++#######+'++++++';;;;;;::::::::;;;''';;;';;;,.:+''''';;;,``.:'',``.......`````.......``............,:;''';:,....`............
;;;;;;;'''''''''''''''''''''''''''''''''''''';'+''',``...```.......,,:;;;;:,,,,,,:;'''''+#######@@@@@@@@@@@@@@##++######+##+###+###+++++++++';;::.,;++++''+++'';+++##################+'''+''''';;;;::,,::,::,,,,,:;;;:;;;;;:.,;';;;;;;;, `:'':.`.......`...........................,,:::,,..................
;;;'''''''''''''''''''''''''''''''''''''''''''';'':.``.```.....,,.......,:;;:,,::::;''''++####@@@@@@@@@@@@@@@##++#######+++++++++++++++++++++';,,,:'++'':;'++''+'+++++++############+''''+';;;;::::;:,,,,,,,,,,,.,,:::::;;;:.,:;;;;;;;:,`.'+;.`........`...............................,.................,,,
''''''''''''''''''''''''''''''''''''''''''''''';';,``..```.`...........,..,:;;::::;;;'+''++###@@@@@@@@@@@@@@####@##+##+''+++++'''''''''+++++++;::;+''';::;;;::;''++'''++++++++####++'''''++';::::::;;:,,,....,,:,...,,,,,:::,.,;;;:;;;:..,'',``...`............,,...............,.....................,,,,,,
'''''''''''''''''''''''''''''''''''''''''''''''';:``````````....`....,:::,.,:;;;::;;:;'+''+####@@@@@@@@@@@@#########++';''''''''';;;'''''++++++;;++';';::::,...,;;'+''+#++++++++##+''''''+++':,:;:::::,::,....,,:,.`.....,,::,.:;;:;;;:..:+;................,,,,,,,,,,,...........,,,,,..,,,,........,,,::::
''''''''''''''''''''''''''''''''''''''''''''''';.` ``  ``````...........,:;:,:;';::;;;;'+''+####@@@@@@@@@@@@###@###+'';;;;;;;;;;;;;;;;;;''+++++';;;;;';::::.``...:'++++#++##++++++'''+'''++++;:,:::::,,::::,...,:,..``....,,,,.,:;::;;:.`:+;...............,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::
'''''''''''''''''''''''''''''''''''''''';''''':.`  ``      ``````.......,,::::;;';::;;;;+''+####@@@@@@@@@@@@@@@###+;;;;:;;;;;;;;;::;;;;;;;''''+''::;'';:::,.`````,'+++++++##+++''''''''''''++':,,,:;:,.,:;;:,..,:,.........,,,..,;;:;;:,`;+:`............,,,,,,,,,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::;;'
''''''''''''''''''''''''''''''''''''''''';;'',`````  `` `      ```....,,,..:;;::'';::;;;''+####@@@@@@@@@@@@#@@@###+;::::;;;;;;:::::;;;;;;;;;'+++';;;';:,::,```.`.:'+++++#+++++++''''';;;;'+++';,,,:::..,:;;:,...:,.....`...,,,...:;::;;:`;',`........,..,,,:::::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::;'+#@
'''''''''''''''''''''''''''''''''';'''''''';,` ``  ``````    ``````..,,,,,,,,:;;;'';::;''+#####@@@@@@@@@@@@@@@@###+;:::;;::::::::::;;;::::;;''++'';;;;:,,:.``````:''''++++++++++'''''::::;;'++':,,,,.,,::::::..,,,,,,,.``........,:;;:::`;+,........,,,,,::::::::::::;::::,,,,,,,,,,,,,,,,,,,,,,:,::::'+@###
;;;''''''''''''''''''''''''''''';''''''''';,`  ````````````````````..,,,,::::,:::;'';;;'++###@@@@@@@@@@@@@@@@@###';:;;;;:::::::::::;;::::;;'''''+';;;:,.,,.`` ``.;'';'++++++++++'''';:::,::;'+':,.,,:;::,,:::,.,,,,,,,..`.........,:;::;.:+:...,,,,,,,,,:;;''''''';;;;;:::::,,,,,,,,,,,,:,,,,,,,,,:;'+#@@@##
;;;;;''';;;;;;;;'';;;';;'''''';';''';'''';,` ```````````````````````.,,:::;;;;;:;;;''''+#####@@@@@@@@@@@@@@@@@##++';';;;:::::::::::;::::;;;;;'''+';;;:.,,.```````;'';'+'++++++++''';;:::::::;++',.,:;':,,,:::,,.,:::,..............,:::;,,+:.,..,,,,,,:;;'+#######+++'';;::::::,,,:,,,,:,,,,,,,,,:'+###+###@
;;;;;;;;;;;;;;;;;;;;;;';;;;''';'''';'''';,` ``` ````````````````.``...,:;::;'';;;;;''+++#####@@@@@@@@@@@@@@@######+''::::::::::::::::::;;;:::;'''''+':.,,.```````;''''''++'''+++'';;:;;:;:::;'+';,::::,,,,,,,,,,,:::,.......,,,....,:;;;:,';.,..,,,,,:;'+#@@@@@@@@@@###++';::::,,,::::::,,:,,,:::'++'';;;'+#
;;;;;;;;;;;;;;;;;;;;;''';;;;';;';';;''';.` ``` `````````````````......,,::::;;;;;;'''+####@@@@@@@@@@@@@@@@@@#####+';::::::::::::::;::::::::::;;''++#+;,...``````.;;;;;'+'''''''+'';::;;;;;;::;'''::;:,..,,,,,,,,:::,,,,,....,,,.....:;;;;,;',,,,,,,,:;'+#@@@@@@@@@###@@@##+';::,::,::::::::,,:;;+++':::::;'+
;;;;;;;;;;;;;;;;;;;;;''''';;;;;';;''';,.  ````````````````````........,,::;;::;';'''++####@@@@@@@@@@@@@@@@@@@###+';::;;:::::::,,,:;::,,,,::::;;'++###+;:,.```.``,;;;';''''''''''++';::::::::::;''::;:,..,,,,,,,::::,,,,,,,..,,,,....,:;;;::;:,,,,,,,:;+#@@@@@@###+''''+++#@#+';:::,::::::::::;'++'::::,,,:'+
;;;;;;;;;;;;;;;;;;;;;;;;''';;;'''''';,`  ``````````````````..........,,,::;;;'''''+++#####@@@@@@@@@@@@@@@@@@@###+;;;:;;;;;:::::,,:::,,,,,,,,,:;;'++###+';.` `.``.;;;;;;;'''''';;''';::::::::::;';::;;:,..,,,,,,::::,,,,,,,,,,,,,,,..,:;;;;:;:,,:,,,:;'#@@@@@@##+';;:::;;;'+###+';;::::::::;;'+++';:,:::,,:'+
;;;;;;;;;;;;;;;;;;;;;;;;''';;'''';:.`  ```````````.....``........,,,,,,,,:;;''''+++#####@@@@@@@@@@@@@@@@@@@@#####':::;;;;::::::,::::,,:::::::::;;'+++++++,`  `  .;;:;;'';;;'';;::;;:,,::::::::;;;::;;;,...,,,,:::::,,,,,,,,,,,,,,,...,:';;:';,,:::::;'#@@@@@##+;;::::::::::;+#@#++';;;;;;;'+##+;::::::::::;'
;;;;;;;;;;;;;;;;;;;;';;'';;''';,,.`   `` ```````.................,,,,,,,,,:;'''+++++###@@@@@@@@@@@@@@@@@@@@@@###+;;;;;;;;:,:::,,:::,,:::;;;;;;::;''''''++':.`  `.:;;;;;;;;''+++++'';:,:;:::::::;;::;;;:,....,:::::::,,,,,,,,,,,,,,,..,:;'';;':,:::::;'#@@@@@#+';::::::::;;:::;+#@@#+'+''++###';:::::::::::::
;;;;;;;;;;;;;;;;;;;;';;';;'';,.`   ```````````...............,,,,,,,,,,,,,:;'+++++###@@@@@@@@@@@@@@@@@@@@@@@@###';;'';;;:,,::,,,:::,,,,,::::;;:::;;;''''+#+'::,,::::::::;;:;'++##+++;::::::::::;;::;;;;;:,..,:::::::,,,,,,,,,,,,,,,,.,,:''';';,:::::;'#@@@@@#';::::::::::::::;;;+#@@#######+';:::::::::::::,
;;;;;;;;;;;;;;;;;;;;';;';'';.`   ````````````.....,,........,,,,,,,,,,,:::;;'++++####@@@@@@@@@@@@@@@@@@@@@@@####'''';;;;,,,,,,,,,,,,,,,,,,:::::,:::;''''+####'''';;;;;::::::;'+++++++;;::::,:::;;::;;;;'';,.,,::::::,,,,,,,,,,,,,,,,,,,,;'''';:::::::'#@@@@@#':::::::::;::::::::;'##@@@##+';::::::::::::::,,
;;;;;;;;;;;;;;;;;'';;';;'';,` ```````````````...,,,,.......,,,,,,,,,,:::;;;''+++#####@@@@@@@@@@@@@@@@@@@@@@@@@#+'';;;';,::::,:;;:,,::::,,:::::,,,,,:;'''++###+##+#####+'''''+++++++++';::::,:::::::;;:;''';,,,::::::,,.,,,,,,,,,,,,,,,,,:''''';,:::::;+@@@@@#':::::::;:;;;::::;;:;;''++'';:::::::::::::::,,.
;;;;;;;;;;;;'''''''';;''';,` ````````````````..,,,,,....,,,,,,,,,,::::;;;;'''+######@@@@@@@@@@@@@@@@@@@@@@@@@@#++';::;:,;'+''++''''';:::,::::,,,::::;''''+##################+++'+'++++';::,,::::::;;;;;'''';:,::;:,,,,,,,,,,,,,,,,,,,,,.,;'''+':::::::'#@@@##;,,::::;;;;;;;;;::::::::;;;;::::;:::::::::::,,.
;;;;;;;;''''''''';'''''';,`  ````````````.....,,,,,,.....,,,,,,,::::;;;;'''''+####@@@@@@@@@@@@@@@@@@@@@@@@@@@@#++';;,,:'++++++++++'';:,,,::,,,,:;'+''++;:;+@@#######+'+#####++';'''++++'::,,::::::;;;;'''''';;;;;:,,,,,,,,,,,,,,,,,,,,,,,:'''++;::::::;+@@@##;,,::::;;;;;;;;::::;;;;:::;;;;::::::::::::::,,,
;;;;;;;;''''''''''''''';,`   `````````.......,,::,,.......,,,,::;;;;;;''''+++####@@@@@@@@@@@@@@@@@@@@@@@@@@@###+';:;;'+++';;;;;;;;;::,,,,::,,,,:;''''+';:,;+######+#+'''+++++';;;;;'''+';:,,,::::;;:;''';'++++++';:,,,,,,,,,,,,,,,,,,,,,.,;''''';:::::;;+@@@#',,,,:;;;;;;;;::;;;;;:;;;;::;::::::;:::;;;:,,.,
;;;;;;;''''''''''++''+;,`  `````````````.....,:::,,......,,,::::;;;'''''''+######@@@@@@@@@@@@@@@@@@@@@@@@@@@###+;;''+++';:,,,,,,,,,,.,,,,,,,:,:;;::;''''':,:'##+''+++';;''''';;;;:;;;'++;;:,,:::;;;;;'';;'+#####+';::,,,,,,,,,,,,,,,,,,,,.:'';'+';:,,:;:'#@@@+::,,:;;::;;;;;;;;;::::::;;:::::::::::;;;::,,,,
'';;'''''''''''''++++',    ````````````.....,,::,,..`...,,,:::;;;'''''''++##@##@@@###@@@@@@@@@@@@@@@@@@@@@@@#+'';'++++';';::::,,,.,,,,,,,,,,,:;;;::;;'';';:..,,.:'+''';::;;;:;;::::;;;''';::,,::;:;;'++'++###++#+++';::,,,,,,,,:,,,,,,,,,,,:''''';::::::;;+@@#+':::::::;;;;;;;;;;;;'''''';;::::::;;;;:,:,:::
''''''''''''++++++++',` ```````````````.....,,::,,....,,:::;;;''''''''++###@@###@#++##@@@@@@@@@@@@@@@@@@@@@##+'''';;'''';''+''';:,,,,,,,,,,:::;;;;;;::::;;;,` `,;;;;'';::::::::;:::::;;'+';:,,::::;;'##+########+++++';:,,,::::,::,,,,,,,,,:'''';;;::::;;;'+#@@#+'::;;;;;;;;;;'''++###@@@#++';;;;'';;:::::::
''''''''''++++++++#+:` ```````````````.....,,:::,...,,:::;;;'''''''''+++##@@@####++'+##@@@@@@@@@@@@@@@@@@@@@@#++;;:::::;;''''''';;:::::;::::::;;;;;;;:::;;;,` `:';::;;;;:::::,::::,,:;;;''':,,,::;;;'############+++++';::::,,,,:,,,,,,,,,,:;''''';;;:::;;;;'+#@@#+'';;;;;'''+++############++''';;::,,:::::
''''''''''+++++++##;. ```````````````......,,::,,..,:::;;;''''''''++++++##@@@####+++++#@@@@@@@@@@@@@@@@@@@@@@@##+';:,,,:;;;:;;;;;;;''''+'';::,:::;;''';;';;:. `:;;::;;;';:,,,,,,,:,,:;;;;'';:,,::;''+#############++++++;;:,,:::::,,,,,,,,,:;'''''';;;:::;;'';'+##@##++++++++###+++'';;;;;;''''';,,::,,:;;;;
'''''''+''++++++##',  ```````````````.....,,:::,,,,:;;;''''''''+++++++###@@@####++++++#@@@@@@@@@@@@@@@@@@@@@@#####+';:,,,::;;;;;;;''+++++++';:::::;'++'+''';,..::;;:::;;;;:,,,,,,:,,::;;;''';::::;'+############+###+++++':::;;:,,,,,,,:,,,:;''''''';:;;;;:;;;;'''++###+++++'''';;;;;;;:;:::::::,,:'':,:;;;;
+++'++++++++++++#+:` ```````````````.....,,,::::::;;'''''''''+++++++++##@@@@###++++#++#@@@@@@@@@@@@@@@@@@@@@@########+;,,,,:;;;;;;''''+++++++';:,:;'++'+'''';;::::::::::;;;:,,,,,,,,::::;;''';::;''+#########@#######++++''';:,,.,,:::,,,,,:;'''''++';:::;::;;''''''''';'';;;;;;;;;;;;:::::,,,,,:;'+':::;;;;
++++++++++++++++#;.`````````````````...,,,,:::::;;''''''''+++++++++++##@@@@#########+##@@@@@@@@@###@@@@@@@@@@@##+++++++';:,,:::;''''''''''++++';::::;;;;;'+'';:::::::::::;;;:,,,,,,,::::;;;''';;;'+######@@#@@######++++++++'::,;;;;;:,,,,,,;''''''++';::::;;;;;'';;;;;;;;;;;;:::::::::,,,,,,,::''''':::;;;;
+++++++++++++++++:` `` ````````````...,,,,:::,,:;''''+++'++++++++++###@@@@@############@@@@@@@@@@@#####@@@@@@##++''++++++'::,,:''''';';;;'''++++;::,,::::;'+++;;::::::::::;;;:,,,,,::::::::;'';;:'+###@##@@@##########++#++''+++';::,:::,,,,;''++''+++++;,,:;;;;;;;;;;;;;;;;;::,::,,,,,,,,,,,:;'+;:;';::;;;;
++++++++++++++++'.`````````````````...,,,,:::,,:;;''''+++++++++++###@@@@@@@@#####@@#######@@@@@#@#######@##@@#++''+++++++++;:,:;''''';;';'''''+++';;,,,,,,;''+'';:,,:::::,:;'':,,.,:::;::,:;'+';;'+####@#@@@@@@#@#######'++##++'::::::,,,,,,:;++++++++++#';:,::;;;;;;;;;;;::::::,,,,,,...,::;'+++;;;;;::;;;;
++++++++++++++++:.````````````````...,,,,:::;:;;;'''+++++++++#####@@@@@@@@@@@@@@@@@#+###########@@######@@@@##+++++++''+++++';:,:;';;'';;;''''+++++;,``..`.,:;'''';::,,::,,:;';;,,,,,:;::::;'+'''+#####@@@@@@@@@@##########+++';;:,,,:::,,,,:;+++++++++++##+;::::::;;;::;:::::,,,,,,,,,,.,;''+++'::;';::;;;;
+++++++++++++++;,````````````````....,,,,::;;''''''++++++#####@@@@@@@@@@@@@@@@@@@@##++###################@@##+''''++++++'+++#+;:,::;;;;;;;'''''''++',``..```.,:;;''':,,,:,,,,;;':,,,,:;;:::;'++'++#####@@@@@@@@@@@#######++++''',,,,,,,,::,::;+++++++++##+####';;:::::;;;;;::::::::::::;'+++++++:..;';;;;::;
++++++++++++++';.```````````````....,,,,::;;;'++++++++##@@@@@@@@@@@@@@@@@@@@@@@@@@#+++######################+'''';;;;''+'''++#+';:,:;;;';''';''+'++':,..`..``.,:;'+'';:,,,,,,,;'':,,,:;;;;::'++'+######@@@@@@@@@@@######+++++';;''''';:::::::;+##################+';::,,,,,,,,,,,,:;'++####+++++:.,'+';;;:::
++++++++++++++':.```````````````...,,,,::;;;;'+++++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+++######################++++'';;:;;;''''+++++;:,:;';;;''''''+++';:,....` `,:;'''++;:,,,,,,:''';:,,:;;;;:;++++#####@@@@@@@@@@@#########+''++#++'';;:::::::;+################@######++''''''''++######+#######';;'+';:;;::
++++++++++++++;,.```````````````..,,,,:::;;;;''++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+'+#########################++++'';:::;;''+++++';:,:;'';;;''''+';;;;;::,.``.:;;;''+++;:,.,,:;''';:,:;;';;;'+++#####@@@@@@@@@@########+++####++';::::::::::;+##@##########@@@###@@@@@@#########################+';;;;;;;:,
##+++++++++++';,````````````````..,,,:::;;;;''+###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+'+########+++###########+++++##+++';:::;'''+++++;,,;''';;'''++';;'''';::,,,:::::;'+++';,,,:;;'+';::;;'';''++++##@@#@@@@@@@@@########+##++'';;;:::::::::::;+#@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@#####@@##########+'''';:;:,
###++++++++++':.````````````````.,,:::::;;;;'+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#''+#######+++++#####@###++++++++''+++';:::;;''++++';::;''';'''';;'''+#+';,,,::::::;;'+++'::::;''++;::;'''''++++#@@@#@@@@@@@@@########++''''''';;;:::::::::;+#@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@##@@@@###@@@@@###@###+';:;:,
####+++++++++':.`````````````````.,,,:::;'''+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+++++#++##+++##########+'';;;;;;;;;'++++'';::;'''+++';::;''''+'::;;'++#++';,:;;:::;::;''+++;::;''+++;:;'++''++++#@@@@@@@@@@@@##++++++++++++++''';;::::::::::+#@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@#+';;::,
#####++++++++;:..``````````````````.,:::;''+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+++#+#+###+++########++''';;;::::;;;''+++++';:;'++++++';:;;''';;;;;'''''++';::::;;:::;;;'++'';:;'+++'';;'++'+++##@@@@@@@@@@###+++++##+++'';;;;;:::,,:::::::;+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###+';;:::
#####++++++++;:..``````````.,,.`````,::;;'+#@@#@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+++#++++++++#####@@@########+++';:::;;'++++++';;;''++#+';::;'';:::;;;;;;'++';:::;::::::;;'+++';:;'++++;;'++++####@@@@@@@@@##++''''';;;::;;;;;;;;:::,,,,,::::'#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@####';::::,
#####++++++++':..`````````..,,,..```..:;'+##@@##@###@@@@#@@@@@@@@@@@@@@@@@@@@@@@@#+''+++++++########@@@@##########+';::,:;'''++++';;''+++++':::;;::;;;;'';'''+';::::;;;;;;;''++'';;;'+#+';'+++++###@@@@@@@@@#++'''''''''''++++++++++++'':,,:::'#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;:::::
#####++++++++':..``````````..,,..`````.:'#@##@@######@###@@@@@@@@@@@@@@@@@@@@@@@@#+;;;''++++#########@#####+++#######+';:::;;'+++++''''+++#++';::;'';';;';'''++'::;;;;;';;;;''+++';;;+#++'''++++##@@@@@@@@@@#+++++'''';;;;;;;;;;;;;;;'''+;::::'#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+';;::
#####++++#+++',..`````````..,,,,.``````.'#@##@@#########@@@@@@@@@@@@@@@@@@@@@@@#@#+;:;'++++++++####@@###++''''++++++####';::::'++++++'''++++++';:;;;'++''''''+++;;:;''''''';;'++++'';'++#+''+####@@@@@@@@@@###++''';;:::::::;;;;:::;;;;;''':::'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#+'';:
++###+++##+++',..````......,:::,...`````,'##############@###@@@@##@@@@@#@@@@@@@#@#+';'++'''++++++#####+'';;;;;;'''++++++#++';:::'++++++'++++++++':,:;'+';;;''+##+;::;'';'''''''+++++'''+##+'+###@@@@@@@@@@@##+++'''';::;;;::::::;;;;;;;::'';::;##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#++';:
++++#+++##+++',..```.:::,...,;:,....`````:+########################@@#####@@@@@####+'++;;;''''+++++++';;;;::::;;;''++++++++++';::;''+++++++++++++';:,;';::;''++#+';;;'''''''''''+++#+''++##+++##@@@@@@@@@@@#+++'';;;'';;++'';;;;::;;;''++''';:;+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##++';:
++++#++++##++':.```.,;'';,,.,;;;:,...`...;#@@@##############################@@#####+++':;;'++++####++++++++''';;;::;'+++++++##+':::;'''+++'++++#++';::::::;'+++++#+;:;'''''++'''''+##++++###++#@@@@@@@@@@@@##++';:::;'';:::,,,,,,,,,:::;;''+;;;+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@###+'';:
++++++++##+++':..``.,;'';:,,,:;;:,,.,,,,:::;'+#@##############################@####+';;;+++####@@@@@##########++'';;;;''+++#+++#+';::;;''''''+++++#+';::;::;+++++#++;:;'''''''''''++++++++#####@@@@@@@@@@@@##+'':;;,....```     ```````..,:''''+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@####+'';;
++++++++##+++':,.``.,;'';;:,,,:;;;:::;;;;.``.:'#@#############################@@###+';'+######@@@@##########++##++++';;:;;'++++##++';;::;;;;''''+++++':,,:;''+++#++#+;:;''+''+'';'+++##+++######@@@@@@@@@@@##+''';:.```````````````.....`..,;''+###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@###+';;;
+++++++++##++':,....,:;''';:,,,;;''''+++;,````:+###################################+++############++'''''++++++''+++#++';;::;;'+++##+';:,:;;;;''++++++;.`,''''+++++##+;:;''++++'''''++#++#######@@@@@@@@@#@@##+';,`````````````````.......`.,;'#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@##++'';:
+++++++++#++++;,,,,,::;''';:::,:;'++++++':..``,'################################@#+++#######++####++'''';;''''''+''''++++++';;;:;;'++++';:,,:;;;;'++##',..,;+''+'+++##+':;;'++++''''++++########@@@@@@@@@@@@##':,.``.``.````............`....:'#########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@##++'''';
++++++++++++#+;,:;;:::;'++';;:::;'+###++';.```,;################################@+'+#######++++++'''''++'';;:;;''++'''''++###+';:::;''+++':,::,`.,;'++';:,.:''''''+++###';;;'++++'''''++#######@@@@@@@@@@@@@#+:.`....```````````........`.....'#########@####@@@@@@@#################################++''';;
++++++++#++##'::;'';;::''++';;;:;'+###+++;.``.,'#################################+'+#####++''+++';;:;;''+++'';:::;''+''';;;'++##+';:::;''++':.````.,:;;';::::;''+''++###+';;''++++++''++++######@@@@@@@@@#@@#;,.....````````````...........``.+@###############@@#####################################+';:..
+++++++++++#+:.,;++';:::''++';;:;''+##+++;.`..,;################################+++#####++''++++';;;;:::;'++++';;:::;''++';;;;'+#+++;:::;'++;:.`````.,;;;;;;;:;''+++++###+';;'''++++'+++++######@@@@@@@@@#@@+:,,.....```````````````````.``...+######################################################+';,`  
++++++++++#+;..:'''';;::;'++'';;;;''+#++#:....,'###########################@####+'+++#++''''+##++++'';;:::;;'++++';:::::;'''';;:;'+##+':,:'+++;,.`..`,:;;'+';;;;;'++++++##+';;''+++++++#+########@@@@@@@@@@@+:,,,....````````````````````.```.+@@###@####################################@##@########+:`  ``
++++++++##+;,.,;''''';;:::;'++';;;;'++##+:.,,,;++++#############################+'''''''''''++#++++++++';;:::;'+++++';;:,,:;'+''::;'++++;;;;+++':,..``.,;'+++'';:;''+##+###+'''+++++##++#########@@@@@@@@@@@+;,,.....````````````````````.```.'@@###@####################################@##@#######+,    ``
+++++++++#+;,,:;;''++';::::;++';;;'''+#+;,.,,:;+++++########@###################;,,::;;;;;;'+++'+++++++++++';;::;'+#+++'';,,,:;''';:;'+++';:;++#+':,,.,:;'+++++';;;'++#+++###+''+++++##+#########@@@@@@@@@@@+;,,,.....``````````````````..````;#########################################@@#####+####;` `  ``
+++++++++#+;:;:::;'++';;::::'++''''++++',...:;'+++++########@@#####@@####@#####+;,.,,:,:::;''''';''''''''+++++;:::;''++#++';:,,:'''';:;'+++;;;'+++';:,:;;'+''++++';;''+##++###+''+#+++##########@@@@@@@@@@@#+;:,,,....```````````````````.````:#################################################@@#;`     ``
#++++++++++';;;:,:;'++';;:::;'+#+++###+;,``.,;'++++++#######@@#####@@@@##@####@+;,,,::::;;;;;;;;;;;;;;'';;;'++++';:::;;'+++++':,,:'++';;;+++';;;'+++';:::;'''+++++'';;'+##++###+'++##++#########@@@@@@@@@@@#';:,,,......`````````````````...``,+###########################################@@##+'+'.   `   `
###+++++##++'';::,,;'++';;;;;'+#######+':...,'+++++++#######@@@###@@@@@##@####@#;,:;;'+++++'';;:::::::;;;;;;;'++++'';:::;;'+++';:,:;'+';;;'+++';;'++#+';:::;''+'++#+';;'++######++++###########@@@@@@@@@@@@#;::,,,......``````````````````..``.'#@######################################@#+++':,```       ``
###+++++###++';::,,,;+++'''';;'+#######+':,,:'++++++++######@@@@@@@@@@@@@@#@##@#+;;'+++++####+++';;:::::::::::;;'++++';;:::;''++';:,:''+';;'+++';;''++++';::;;''++##++''''+#######++++#########@@@@@@@@@@@@+;::,,,......```````````````````````;#@########################################':.`     `  `   ``
###++++++##+'';;:,,,:'++++'';''+#######++';;;'+'+++++++#########@@@@@###@@#@##@#+'++++++++++++#+++'';;;:;:::,:::;;;'++++';:::;'+++;:::;'+';;'++++''''++#+';;;;;'++++##++'''+#######+++#########@@@@@@@@@@@@+::::,,.....``````````````````````.`:#@#@#@###################################'.      `         `
####+++++##+'''';:,,,:;+++''+++#########++''''+''+++++++#########@@@@####@@##@##++++++''''+''''++++++'''+++'';:,,,::;'++++';:::;'+#+'::;'''';''+++''''+++++';:;;''''++##++''+#########++######@@@@@@@@@@@@@+:,::,,......```````````````````````.#@#@#@########################@#@######@#:  `              `
####+++++##++'''';:,.,:'+#+++++#######++++'''''''++++++++#######@@@@@@@@#@@#@@###+++++';;'''''''+++++'';;'+++++';;:::::;''++';::;'+++';:;'''';''+++'''+++++++;::;'''''+##++++++#########+####@@@@@@@@@@@@@@+:,::,,.....````````````````````````.+@#@#@###################@##@@####@###++,`  `               
##+++++++#+++++++';:,,:;'+############++''''''''''++++++++#######@@@@@@@###@@####++++';;'''''';;''+++++':::;'++++++';::,:;'+++';::;'+++':;;''''''++'''''++++++''::;''+++###+++++########++####@@@@@@@@@@@@@+:,:::,.....`.``````````````````````.'@@@#@#####@########@####@#####@@#+';:.                     
++++++++##++++++++'';;::;'++####+#####+'''''''''''+++++++++#######@@@@@@@@#@@####+++;::;''''';;;;;''++++';:::;'++++++'';::::;+++';;;'++++;:;;''''''''''''++++#++';:;;'''++##++++++########++##@@@@@@@@@@##@#:.:::,,....`````...........`````````;@@##@#@###@@#####@@@@###@#@##@+;,`..  `                    
++++++++##+####++++++';;::;'++##+##+++'''''''''''''+++++++++#######@@@@@@@#@##@#+'';,..,:::::;;'''';''++++';:::';'+++++++';:::;+++';;;'+#+';::;'''''';;;;'++++++++';::;++++###+++++#######++###@@@@@@@####@#;.,::,,.....`......`......``````````:#@##@#@###@#####@@@@####@###@#,`  ,,`                      
++++++++##++####+++++++';::;''+####+'''''''''''''''''+++++++++######@@@@@@#@##@+;:::,::::::::::;;;;''''+++++':::;;;'''++#++';:::''++';;'++++';::;'''''';;;'''++++++';;;''+++##++++++###########@@@@@@@######;.,::,,.....,,...`````````````..````,#@#@##@#########@@@####@@#+@#,    `.,.`  `                 
+++++++++##+++######++++';;;;''+++++''''''''''''''''''++++++++++#######@@@#@##@',,,:;'+++'';;::::::;;;'''+++++;:,:::;''+++++++;:::'+++''''++++;::;''''''''''''''+++++';:'''+++++++++++##########@@@@@#######;.,::,,...,,..````````````````.....`,+@@@##@########@@@####@##@@@;      `,.   `                 
++++++++++#+++#####++++++++';;''''+''''''''''''''''''''++++++++++########@#@##@'..,,:'++#+++++''';::::;;'''++++';:::;;;;''++#++';:::'++'''''+#+';::'''++'''''''''+++++';;;''++###+'+++##########@@@@@#####@@',,,:,,.,,::..```````````````````..`.+@@@###########@@@####@###':. `  ` `````                   
+++++++++++++#######++++##++++';;;;'''''''''''''''''''''''+++++++++#######@@#@#;,,,,,:;'+++++++++++';;:::;''+++++';::;;;'''''++#+';::;'+'''''++++;::;''''++''''''''+++++;;;'++++##+''+++#########@@@#######@+,.,:,,,:';,...``````````````````...,;@@#@#@@##@@###@#@###@+;:.`                                
++++++++++++++#####++++++++#++'';;;''''''''''''''''''''''''++++++++#####@@@@#@+;,::,.,:;;;''''+++++++'';:::;'+++++';:::;;;;''++++++';::;+'''''++++';:;;'''''++++''''+++++';;'+++##++'++++#########@@#######@+:,,:,,;'':,...```````````````````...;@@#@###@@#@###@@##@+:.                                    
++++++++++++++#####++++++++##++''';'''''''''''''''''''''''''+++++++++#####@@###';'+'';:,,,::;;'''+++#+++';:::;''+++';:::;;;;;'''++#+';::;;'+''''+++';::;;;;;''+++'''''++++';;'+++##++'++++################@@#;,.,,:'+;,,....``````````````````...;#@#@@###@@##@@###@@;                                      
++++++++++++++#####+++++++++++''''''''''''''''''''''''''''''+++++++++++####@###+++++#++'';:,,::;;;''++##++';::::'+++';;::;;'';''''++#+';::;''''''+##+;:::;;;:;;'+++';;''+++';''++###++'+++###############@@@#+:.,:;';:,,,....`````````````````...:#@#@##@##@#@#',,,:;` `                                    
+++++++++++++###++++++++'''''''''';'''''''''''''''''''''''''''''++++++++#######++++++++##++;::::::;;''+++##+';:::;'+++';,::;'''';''+++++';::;'''''++++';;;;;;::;''++'';''+++''''++###+++++++################@#;,,:'+:,,,,....```````````````````.,+@@##@#@##@#:`                                            
+++++++++++#++++++++++++'''''''';;;'''''''''''''''''''''''''''''++++++++++######+##+'''+''''';;;::::;;''+++##+'':::'++++;::::;;''''''++##';::;'''''++#+';;;''';;;;'+++'';;'++'''++####+++++++##########++###@#;,.:+#;,,,,,.....`````````````````..;#@##@@#@@+,`                                             
++++++++++++++++++++++++'''''''''''''''''''''''''''''''''''''''''+++++++++++####+':::;;;';;;''''';;:::;'''++###++;:::;'++';::::;'''''++++++';:;;''''++++'';''+'';;;'+++'';'+++''++####++++++++########+++#@@@#',,;##':,,,,.........`````.......`..:+@@##@##+,  `   `                    `                   
++++++++++++++++++++++++'''''''';;;;'''''''''''''''''''''''''''''''+++++'+++####;,.,,,,:,:;'+++++'';:::;;'+++++##+';:::;++++;:::;;''''''++#+';;;;''''++#++;;;'+++';;'++++'''++++++#####+++++++++++###++''+#@@#'::+###;,,,,,......................`.'#@@##@+.                           ```                  
++++++++++++++++++++++++''''''''''''''''''''''''''''''''''''''''''''''''+';;:::::,,,,,,:;;'++++++++'';::;;'''+##+#++'';;;'+++';:::;''''+++++#+'::;''''+++++';:'++++';''++++''++++++#####+++++++++++++#++'#@######@#+#+:,,,,,.....................`.;+@@#@;.                            ```                  
++++++++++++++++++++++++'''''''';;;;'''''''''''''''''''''''''''''''''''':,,,....,,,::;''++++++''''+++';;::;;'+++++++++++''''+#+'::::;''''++++#++;;:;'+++++++';;'++++'''++++'''+++++++###+++++++++++++++++#@@@@@##@####;:,,,,,..................`.``,'##@:.                           ``````                 
+++++++++++++++++++++++''''''''';;;;;'''''''''''''''''''''''''''''''''';,,....,,.,,:::'++++'''';;'''+++';:::;;'+++++++###+''++##';:,:;;'''+++++#+':;;''''+#+++;:;+#+++''++++''''+++++####++++++++++++++++##@@@@@#@@###+':,,,,..................`..``:+@+`                          `````````                
++++++++++++++++++++++'''''''''';;;;;''''''''''''''''''''''';;;;;;'''';:,,,,,,::,,,,,,::;;';;;;;;;;;;''+'';;::;'++++'''++###++###+';:::;'''++++###+'''++++++##+;:;+++#+''++#+'''''+++#+++++++++++++++++++##@@##@#@@###+';:,,,,..................````.;#:                           ``````````               
+++++++++++++++++++++''''''''''';;;;;''''''''''''''''''''''';;;;;;';;';:,::;;:::::::::,,,:;;;;;::::;;;;'++++';::;'+++'';;'++######+';:::'''+++++#+':,,;'+''+#+++';;+#+++''++#+'';'''+++++#++++++++++++++###@@##@@@@@##+';:,,,,,.................`````,;`                           ``````````               
+++++++++++++++++++++''''''''''''';;'''''''''''''''''''''''';;;;;;;;;;;:::''';;;;:::;;::::::::;::::;;:;'''+++';::;'++++';;;;'++++##+'';::;';:,....`` `,:''+++++#+;;;'++#++'+##++'''''++#+##+++++++++++++###@@@@@@@@@@@#'';:,,,,,.........,,....```````` `                  `    ```````````                 
+++++++++++++++++++++''''''''''''';;;''''''''''''''''''';;'';;;;;;;;;;;::;'+';;;;;:::;;;;::::::;;;;:::;;;;;'+++';:;;'++++';;;''+++##++';;;;:.      `````:'++'+++++';;++++++++##++'''''++++#+++++++++++++###@@@@@@@@@@@#+';::,,,,........,,,...````````                     ```  `````````       `           
+++++++++++++++++++++''''''''''''';;;''''''''''''''';;'';;;;;;;;;;;;;;;::;++';;;:;;;;;;;;;;;::::;;;:::;:;;;;;'++;;::;;''++'''';'++####++;:.`  ````````` .:;'+++++#+';'++++++++#+#+'''''+++++++++++++++++##@@@@@@@@@#@@#+'';;:,,,.........,,...```````.`                    ```  `````````     `` `````      
+++++++++++++++++++++''''''''''''';;;;;;;;;;;;'';;;;;;;;;;;;;;;;;;;;;;;;;'++';;;;;;;:::;;;;;:::,:;;;;:::;:::;;'++':::;;;''';'+';;'+####+:.  `````````.....,'+''+#++#';'+++++++++++++''''+++++++++++++++###@@@@@@@@@@@@@@+';;;:,,,,......,,....```````````                  ```   ```````           ````     
+++++++++++++++++++++''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'++;;;;::::::;;;;;:::::,,::;;;:::::;;''++';:,:;;'''''''';;+#+:`   ````````........,;'++++##+'''+++++++#+++++'''''+++++++++++++##@@@@@@@@@@@@@@@+';;;:,,,,............```````````                  ````  ```````           ```` ``` 
+++++++++++++++++++++'''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'+';;;;::::;;;;:;::;;::::::::::::::::;'+++';::::;''';'++'';:.   `````````....,,,...,;'+++#++++;++++++++++#+++'''''+++++++++++##@@@@@@@@@@@@@@@@#+';;::,,,,,.........`````````````                `````  ````````          ```  ``` 
'++++++++++++++++++++++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'+';;;;;;;;;;;;;;;;;;;::::,,,:;;;:::::;''++';:,::;';;'++':.   ````.``````..,,,,,,...:''+++++#+'''+#++++++###+++''''++++++++++#@@@@@@@@@@@@@@@@@#+';;::,,,,..........`````````````````            `````  ````````          ``   ````
++++++++++++++++++++++++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''+';;;;;;;;;;;;;;;;;;'';;;::::::::;;:::;;+++';::::;;';:,.` ``````..``````.,:;;::,...,:;'+++###+''++#++++#####+++++++++++++++##@@@@@@@@@@@@@@@@@@#+';;:,,...........````````````````````    ``    `````` `````               `  ````
++++++++++++++++++++++++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++;;;;;;;;;'''''++++++#++++';::::::::::;'+++''::::;;:.```.,.`....````````.:;;;::,,..,:''+#####++'++#++######+++++++++++++++##@@@@@@@@@@@@@@@@@@#+'';:,.......`.``````````````````````````````   `````` `````              ```` ```
+++++++++++++++++++++++++'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'+''++';;;;'''''+++#############++;;::,::;;;;''++';;::::,`..,::,...,.`````````.:;;;';:,..,:;'+++###++'++++#####+#+++++++++++++##@@@@@@@@@@@@@@@@@@@##+';:,.......````````````````````````````````    ```````````              ```` ```
++++++++++++++++++++++++++''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'+''++';;''+++++###################+';:,::::;;''+++';::,,.`,::::,.,..........``.:;''';::,.,:;'+++###+''+++####++#####++++++++##@@@@@@@@@@@@@@@@@@@@@#+';:,,.......`````````````````````...```````    ```````````             `````````
+++++++++++++++++++++++++''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'+'+++'''+++################+++++++##+';::::;;;''++''':,.``.:::,..,..,,,,,,,,,,...,,,:::,,.,:;'++++##+''+++++#####+##+++++++###@@@@@@@@@@@@@@@@@@@@@@#';,,........``````````````````.....`````````  ``````` `````` `  `   ` ```  `````
++++++++++++++++++++++++++'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''''''';'+###########++######+++++++++++';:::;;'''++++;.``.,,,,,,,,::;;;::;;;;:,..```.,,,,,.,:;+++####++''+++++++++#####++++##@@@@@@@@@@@@@@@@@@@@@@@#+;,,...```````````````````````......```````` ````````````    `` ``  ` ```` ```..
+++++++++++++++++++++++++++++''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'';::,,,,:;'+#######+'++'+++#####++''''++++';:::;'+''+':.``.,:,,,,,:;'''''''''';:,,,,,,,,,,,..,:'+##+###++'''++++++#######+++##@@@@@@@@@@@@@@@@@@@@@@@#+':...````````````````````````......`````````````````````````        `` ``  .:;;
+++++++++++++++++++++++++++++''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::,,,,,,,,::'+####+++++''''''+++####++++++++';:::;'''':``.`,::,,,,:'++'''++'''';;;::::::::,...,;'++++###++'''++++++######+++##@@@@@@@@@@@@@@@@@@@@#@@@#':....``````````````````````.......````````````````````````` ``````  ```` `,;';
++++++++++++++++++++++++++++++'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,:::;;;::::::::;;;;'''''''++++''''++####++++++';::;'+',``...,::,,,:'#++++++++''''';:::::::,,,..,:'++######+'''+++#++#####+++#@@@@@@@@@@@@@@@@@@@@@@@@@#':....``````````````````````.......```````````````````````` `.:::,.  `````.;'''
+++++++++++++++++++++++++++++''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,:;'''''''''';::,,.,:;;:;;;;;'++++++++#######++++'':;;:......:;;::::'#++++++++++'''';;:::::,,,...,:'+#####+#+'''++++++#####++#@@@@@@@@@@@@@@@@@@@@@@@@@#+:,......```````````````````.......```````````````````````` .:;;;;,``````.:''''
+++++++++++++++++++++++++++++''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,,;'+++++#####++'';:::::::::;;;;;;''##+++++#####++;::,,,.,,,.,:;;;:,:'#++++++###++';';;;:::::::,....:;++###+##++'''+++++####++#@@#@@@@@@@@@@@@@@@@@@@@@@#+;,,,....```````````````````........```.``.`````````````````.:;:;;,...` `,;';:,
+++++++++++++++++++++++++++++''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,,,;++++##########++';;::,,,::::::,,,:;';;;;;'++';:,,::::,,,,,,:::::,:'##++++#####++''''';;;;;:::,,...,;+++##+##++'''+++++##+++#@@#@@@@@@@@@@@@@@@@@@@##@#+'::,,...```````````````````........```..`..`````````````  `,;;:;;,`..` `,';,.`
'++++++++++++++++++++++++++++'''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,,:;'+####+######++++++'''';;;;;:,,,:::,,,:,,,:;:::;;;;;::,:::::,,::::;'+##+++++####+++''';;;;;;;;;:,,,,,;+##+#####++'''++++#+++#@@#@@@@@@@@@@@@@@@@@@@@@@##';;:,,,..``````````````````..........``.....```````````````.,...,,`````.;''.``
'''++++++++++++++++++++++++''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,::;'+############+##+++++++++':::;;;;:.....,::;;;';;:,..`.,:;::,:;;;;;;+###++'+######+''''';;''';;;::,,,:'+++++###++++''++++####@@#@@@@@@@@@@##@@@@@@@@#@@#+';;:,,..``````````````````........,........```````````` ` ``` ``.`````.;';.``
''''''''++++++++++++++++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,::;'++##########+++++++++++';;;;;::,,.....:''+++;;:,,..```.,,:,,,:;;:::;+###++'++####+#++'';;;;;;''';;::,:;'+++++#+++++''''++####@@@@@@@@@@@@@@@@@###@@@#@@#+'';;:,..``````````````````........,,........``````````   ``   ``.`````.;';.``
''''''''''''+++++++++''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;'++############+++++++';;;::::,......,;''+++:,,,,,,...```.,:,,,:;;:,,;######+''##@##+++++'''';;'''';;;:::;'+++++++++++'''''++##@@@@@@@@@@@@@@@@@#@@@@@@@@@#+'';:,...``````````````````.......,,,..,,,..````````````````````.`..``,;';.``
'''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;:::::;'++##############+++';;;;;:,,...,,..,;::'+':::,..`...`````.,::::;';:,:;+#####+'+##+;:,,::;;''''''''''';;::;'++++++#+++++'';;'+##@@@#@@@@@@@@@##@@@@@@####@@@@+';:,...```````````````````......,,,,.,,,,.``````````````  ```````` `,;;;.``
''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;:::::;'+#############++'';;;;;;:,.....,,.,:';;'+;:,,,....`` ```...,::;'++'::;'+######++':.` `````.,,:;'++''''';;:;'++'++++++++++';:;+#@#@@#@@@@@@@@@@@@##++'''''++###+;:,..`````````````````````......,,,,,,:,..`..````````````````.``` `:;;:.``
;'''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;::::::;+############++'''';;;::,,...,,,,,:;;;;'';::..,.````````````.,;'++#+''+++++++++':.`````````````.:;'''''';;::;'++++++++++++';;'+#@#@@#@@@@##@#@@#+';::,,,,::;'+#+;:,...``````````````````````....,,,,,,:,,....`..``````````````````.;;;:```
;;''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;:::::;'+###########+';;;'+';:,,..,,,,,,,;;;;;'';:,,,..`` ``````````..:'+#+';;';:::;;:,.````````````````.,;'''''';:,:;++++''+++++++';'+@@#@@#@@@##@#@@#+;,,...,,,,,,;'++;:,,..``````````````````````.....,:,,,:,,........`````````````.```,;;::```
;;'''''++++'''''''''''''''''''';';;;;;;;;;;;;;;;;;;;;;;;;;;;::;:'+########++'''''++';:,,,,,,::::::;;::'';:::,...``````````````..,::,,......,,,.``````````````````...,;''''';;:,:++#+''+'+++++';'##@@#@@@@#@@@@#':,,.....,...,,::,.,::,...``````````````````````...,,,::,::,.````.,.``````` `` `.````:;;:.```
:;;''''+++++''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;:;;:'+######+';;;'++++';:;::;:;':;;,:;',:';;;,:,,.`````````````````.`..............```````````````````..,:'+'''';:,:'+#++++''++++''+#@@@@##@@@@@@'::,..........,,,,....,:,...``````````````````````....,,::,::,......,,.`````````.::````:';:.```
::;;'''++++++''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'+######'::;;;++++''''';:;:::,,;':,;+'':,;,,..```````````..``````````.......`.````````````````````...,;''''';;:::'##++++'+''+''+@@##@@@##@@#;,..`......,...,,,.`...,:,,,..`````````````````````....,,:::::,,.,,,,,,.````````,;+;````:'':````
::;;;''+++++++'''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+#######':;';'+++'++';::,:,,,::':,;+';;::,,...`````........```...............``````````````````````..,:;''';;;:::;+###++'++++'+#@@@@@@@#@#+:`..`.....,,,,,,,,,,,...,:,,....````````````````````.....,,::::,,,,,,,,,.````.`.:;'+;````:+',````
:::;;''''+++++'''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;';;;;;;;+######+';;;''++''+':,,,,,:::'',,'+;;;:;:....``````..........................`````.`` `````.....`````.,;'';;;;;:::;+###++++++++#@#@@@##@@',`.``.....,,,,,,,,,,,:,..,,:,,....```````````````````.....,,:::::,,,:,,,,,.````,;+''+;.```:++:``` 
,:::;;'''''++++'''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;'+#####+';;;''+'';'+;::::,:::';,,;+;;;;;:.,.,``.`.`...................````..``````   `..,,::::::,,,..``.:;';;;;;::,:'####++++++##@@@#@@@#',``........,,,,::::,,::,,,,,::,,....```..`````````````......,:::::,,,:,:,,,.``.,'++'++;.```:++;.`` 
,,:::;;;'''++++++++++'++'+''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;'######+':;;''';;'+':,:,,:::;;,,;';';:':...:```.............,,,......`````..`````` ``,:;;;;''''';;;:,,..,;'';:::::,,:'+###++++###@@@#@@+:.``.`......,,,,,:::::::::::,,:::,,.........````````````......,,::::,,,:::::,,`.,'++''';:.``.;''',```
,,,::;;;''''+++++++++++++++''''''''''''';;;;;;;;;;;;;;'';';;;;;+#####+';;;;;;;:;++:,::::::;:::;''';;':..,,...``.........,,........`````````.`````.:::::;;''''''''';;:,,.:'';::::::,,:+###++++##@@#@@@+:.`.``..``..,,,,,:::::::;;';;:::::,,..........```````````......,,::::,,:::::::,..;'''++:,..``.;''':```
,,,,::;;;'''++++++++++++++++++'''''''''';;;;;;;;;;;''''''''';;'+####++';:;;;:,;++'::::;::;;,,;';'':;:,.,:,`.`..........,.,,..,.....``````````` .,:;,,:;;;:,,...,,::;';:,,:;';:,:::,,,:;+###+###@@@#@+,..``....``.,,,,::,:::::;''''';:::::,,,........````````````......,::::::,:::::::,,'''+',.,.```,''+;,..,
,,,,,::;;;'''+++++++++++++++++'''''''''''';;;;;''''''''''''''''+###+++';:;;;::'+':::::::;;:,;''';;'::,.,,,...........,,,,,,,,,.......``````` `,,:,.:;;:............,:::;:::;;:::::,,,.,:'+#####@@#@+,,.``..,.``..,::,:::,::::'++''''':::::,,,.........````````........,,:::::,::::::::;''';,....```,''+;,.,:
.,,,,:::;;''''+++++++++++++++++''''''''''''''''''''''''''''''''+##+++';:;;;::;++;,:;:::;';,;'''';;':,,,:,........,,,,,,,,,,,,,........````` .::..;';,................,:;::::;;::::,:,..,,;'++##@@@+:...`..,.```,::::::::::::'+#+';'++;::;::,,,..........````..........,,:::::,:::;;:;;'+'',.```````,''':...:
..,,,,::;;;'''+++++++++++++++++'''''''''''''''''''''''''''''''++##+++';:;;::;++':,:;::;';,:'''';'':,.,::,..,,,,,,,,,,,,,,,,,,,,,,,,.``.``` .:,.:;;,....................,::::;;;::::,,,,..,::'#@@#+,,,`..,,.``.,:;;:::::::::;+##+'';'+'::;;:,:,,.................``....,,:::::,:::;;:;;'+'',````````:''':...,
...,,,,:::;;;''+++++++++++++++++''''''''''''''''''''''''''''''++#++++;::::::'+';:::::;''::'';'';';,,,:::,,,,,,,,,::::::::::::::,,.,.``.` `.:,,:;:.`....,................,:;::;;::::,,,,,,...:'##',,,``.,,,...:;;;;:::::::::'###+'';;++;:;;;::,,,.................`....,,::::::::::::::;++',`.``....;''':.`.,
...,,,,,:::;;;''''+++++++++++++'''''''''''';''''''''''''''''''++++++';:::,:'++;::;:::;':,;+';';''::,:::;,,:,::::::::::::::::::,,..```````,:.,:;,...,,.......,............,:::;;;;::,,,,,,,...,:::.,.`,.,,,::;;;';;::::::::'##+;:'';;'++';';:::,,,................``...,,::::::::::::::;'++,..``..`.;''',```.
.....,,,,,::;;;''''++++++++++++''''''''''''''''''''''''''''''''+++++'::;::;++':::;::;';:;+'''''+;,::;;;;:,;::::::::::::;:;;::,,..``..```,:,,;:,..,,..,,...................,::;;;;:::,,,,,,,,....,,..,,,,::;;';;';;::::::;'+#+:,,''';;'++''';;::,,,...............``...,,:::::::::::::::'+':..```...'''':..,:
......,,,,:::;;;;''''+++++++++'''''''''''''''''''''''''''''';''++++';::;:;++';::;:::''::++;+';+';;:::;';:,;:::::::;;;;;;;;::,,.....,,...:,,;:,...,,,....,................`.,:;;;;;:,,,,....,..,::..,,,:,::::;;;;;:::::::''++;,,;''';;'+++''';;:,,,,...............`...,,,::::::,:::::::;++:,,,,,,..'''';:;;'
........,,,,::;;;;;''''+'''++''''''''''''''''''''''''''''';;:;+++++':;;'''++;:::;::;+':;+'+';'+':;:::;';::::::;;;;;;;;;;;:::,......,,.,::,;:,..,,,,,.,,,....................,:;::;:,:,` ..``..:;,`,:,:::::;;;;;;;;;::;;;;+#;..;++';;'''+++++';;::,,,,,..,............,,,,::::::,::::::;;'';::::::.,'''+'++++
.........,,,,:::;;;;;''''''''''''''''''''''''''''''''''';;;;:;++++';;''''++':::;::;'';;'''+''+';:;;;:;';::::;;;;;;;;;;;;::,,,.,,,,::.,:,,;;,..,,,,,,,,,,,,,...,,....````````.,::;:::,```.```.:;,,,::::;;;;;;;;;;;;;;;;;;+#',.;+''';;'''++++++';;::,,,..,,,...........,,,,,:::::,::::::::;'''''''+,,;''''''''
..........,,,,::::;;;;''''''''''''''''''''''''''''''''';;;:::;++++';;''''++'::;;::'+':'+'+''++';;;;;;;';::;;;;;;;;;;;;;;:,,,,,::::;:,::,:':..,,,,,,,,,,,,,..,,..`````````````.,:;:;:. `.` ``,';,,;::;;;;;;;;;;;;;;;;;:;'#+:,:'+'';;;'''++++#++';;::,,,,,,,,,..........,,,,::::::::::::::;+######+:.:'++'++++
...........,,,,::::;;;;;''''''''''''''''''''''''''''''';;;:::;++++';''';++';::;;::+';;++'+''++;;;;;;;'+':;;;;;;;'''';;;::,,,::;;;';;;:,;':..,,,,,,,,,,,,,,,,,.`````````````` `..,;:.````  `,;;,:;;,,;;'''';;;;;;;;;;;;;+@+'''++';;;'''''+++###+'';:,,,,,,,,,,..........,.,::::,::::::::::'++++++#:..:;;'';;:
...........,,,,,::::;;;;;;;'''''''''''''''''''''''''';;;:::::;+++';;'';'++;::;;;:;+';'#'++'++';;;;;;;'+';;;;;''''''';;;:::::;''''';;:,,;;,,,,,,,,,,,,,,,,,,.````.........```````,:,  ``  ``:':,'',`.:'++'';;;;;;;;;;:;+#@@##++';;;;'''''+++####''';:,,,,,,,,,............,,:::::,::::::::;'+#####;,...,:,,.`
...........,,,,,,:::::;;;;;''''''''''''''''''''''''';;;::::,:;+++';'';;'+';:;;::;'+';++++''++;;;;;;;:;+';;;'''''''''';;::;;;'''''';:,:;;:,::,:,:,,,,,,,,,,.` `.,,,,,........````..`` `` `..;;;;',``.;+#+';;;;;;;;';;;'#@@@#+'';:;;'''''''+++###'''';:,,,,,,,,......``.....,:::::,::::::::::;'''';:,,..`.....
............,,,,,,::::::;;;;;;''''''''''''''''''''';;;::::,,,;+++';';;''';::;;::'+'''+++''++'';;;;;;:;+';'''''''''''';;;;;''''''';;:,;';:,:::::::::,,::,.`` `.,,,,...........``````.``````:;;;':``,;+##+;;;;;;;;;;;;'+#@@#''';;;;''''''''++++#+;;;'';::,,,,,,.......``.....,:::,,::::::::::::,,,,,,,,..`...,
..........,,,,,,,,,:::::::;;;;;;;;;;;;;;;;'';;;;;;;;::::::,,,;++';;';;''';::;;:;++;;'#'#''#+'';'';;;;'#';''''''''''''';;;''''''''';:;';:,:,:;:::::::::,,````.,,,,,..........`````.``..` ``;';;:.`,:'###';;;;;;;;;;;;'#@@#'';;;;'''''''';'++++++:::;'';::,,,,,.......```....,,::,:::::::::::::,:::,,...```...
..........,,,,,,,,,::::::::;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,:++';;;;''';::;;::;++;'++++''#+;'''';'''+#+''''''++''''''''''''''''';;;;;;,:::::::;::::::,,``.,,,,,,,,,..........``.....````:'';':`,:'###+';;;;;'';';;'+@@@+';;;;;';;;;'''''''+++';:,:;;';::,,,,........```....,,:,::::::::::::::::,,,...``....
..........,,,,,,,,,,:::::::::;;;;;;;;;;;;;;;;;;;;:::::::,,,,,:++';;;;'';:::;;:;'+';'++++++#+'''''''''##+'''''+++'''''''''''''''''';;;;:,::::::;;;;::::,,..,,:,,,,,,,,............`..````,'';'';:''+##+';;;;;;;''';'+@@#+'';;;''''''';;;;;'''+++;,,,,:;';::,,,........```....,,,:,:::::::::::::::,,,,,.....``
.......,,,,,,,,,,,,,,:::::::::::::::::::::::::::::::::::,,,,,;+';;;;;'';::;;::;++';'+#+++++'''''''''+##+'''++++'''''''''''''''+++';;';:,:::::;;;;;;;;::,,,,:,,,,,,,,,,.............``..`;++;'''+####+';;;;;;;;;';'+##+'''';;''';''';;;;;;''''++;:,,,.,;';;,,,.......```````...,,::::::::::::::,,,,,,,,,,..``
......,,,,,,,,,,,,,,,,,,::::::::::::::::::::::::::::::::,,,,,;+';;;:;';:::;;:;'+'''++#+'+#+''''''''''##+++++++''''';;;'''''''+++'';;';,,:::::;;;;;;;;;:::::,,,,,,,,,,,,,,,.......,.`,..:++''''#@#@#+';';;;;''';''+#+;::'+'''';;''';;;;;;;''''++';,,,,.:;';:,,.....``````````..,::::,::::::::::,,,,,:,,,,..``
.....,,,,,,,,,,,,,,,,,,,,:::::::::::::::::::::::::::::,,,,,.,:'';;;;'':::;;::'++';+++++++#+'''''''''+###++++++'''';;;;;''''''+++';:;';,::::::;;;;;;;;;;::::,,,,,,,,,,,,,,,,,,,...,..,.,+#''''+#@@@#';;';;;;'''''##+;,,;'+'''';;';;;;;;;;;''''+#+',,,,,,:;'';:...`````````````.,,:::,,::::::::::,,:::,,,,..``
,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::::::::::::::::::::,,,,,,,,,:'';::;;;:::;;:;'++;;+#++++##+''''''++++###+++++'''';;;;;;;'''''+++';;;':,:::::;;;;;;;;;;;:::::::,,,,,,,,,,,,,,,,.....,..;#++;;+##@@#''''';'';;'''+#+;,,:'++++'''';;;;;;;;;;'''''++':,,,,,,:;'';,.`...```````````..,:::::::::::::::::::,,,,,...
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::::::::::::::,,,,,,,,,.,:'';::;;;::;;::;++';'+#++++##+++'''++++####+++++'''';;;;;;;'''''+++';;';:,:::;;;;;;;;;;;;;;;;::::,,,,,,,,,,,,,,,....`.,.:+#+';;+##@#+''++''''';;'+#+;:,:'+#+++';;;;;;;;;;;;;;;''+##+;,,,,,.,:;;;,```......`..``````.,,,:::::::::::::::::,,,,,,,
,,,,,,,,,,:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::,,,,,,,,,,,.,:''::;;;::;;;:;'++';'##+#++##+++'''++++#@###++++''''';;;;;;'''''+++';;';:,;:;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,,,,,..``.,,,'+#+''''#@##+'+++++''';'+##+:,,'+##+'';;;;;;;;;;;;;;;;'++@#+:,,,.,,,,,::,.``..,,,,....```````.,,::,::::::::::::::,,,,,,
,,,,,,,,,:::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,:;;::;;:::;;;:;'+'''+###+#+##++++'++++######+++'''';;;;;;;;;'''++++';;';:::;;;;;;;;;;;;;;;;;;;:::::::,,,,,,,,,,..```,,,;+#++';''#@#+''++#+++''''+#@+';'+++''';;;;;;;;;;;;;;;;'+#@@@+;,,,,,,,,,,,.`...,:;::,,,,..``````.,,::::::::::::::::,,,,,,
,,,,,,,:::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,....,,...,;;;:;;:::;;:;'++';'+###+++##++++++++###@###+++''';;;;;;;;;'''+++++';'';::;;;;;;;;;;;;;;;;;;;;;:::::::::,,,,,,.,.` .::;'##++;;;+##+'''+####+'''#@@##+++++';;;;;;;;;';;;;;;;''+##@###':,,,,,,:,,,.``..,;'';;::,...```````.,:::::::::::::::,,,,,,
,,,,,::::::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,...........,;;;:::::;;;:;'++';++++##+###++++++####@@###++''';;;;;;;;;;'''+++##'''';::;;;;;;;;;;;;;;;;;;;;;;;::::::::,,,,....``:::'+##+';;'+##''''+####+++#@@###+++'';;;;;;;;;;;;;;;;;'+#@@@@###':,,,,,,,,,..`...,;++';;:,,..````````.,:::::::::::::::,,,,,
,,,,:::::::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,............,;;;:::::;;:;'++'';+#++##+###+++++####@@@###++'';;;;;;;;;;''''++#++'''';::;;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,.,.``,::;+++#+;;;'##+''''+####++####+++'';;;;';;;;;;;;;;;;;'+#@@@@@####+;:,,,,,,,,,...,,,:'++'';:,..`````..``.::::::::::::::::,,,,
::::::::::;:::::::::,,,,,,,,,,,,,,,,,,,,,,,,.................,;;::::::;;:;'++';'+#++##+####++++####@@@###++'';;;;;;;;;''++++++++'''';::;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,..,,..,:;'##+#+;;;+#+';'''#####+###+''';;;;;;;;;;;;;;;;;;;;'#@@@@@@@@###+'::::,,,,,,,,,,:,,;+++'';:,.`````````.,::::::::::::::::,,,
::::::::::;;:::::::::,,,,,,,,,,,,,,,,,,,,,,................,.,:;::::::;;:;'+';''+############++####@@@###+'';;;;;;;;;'''++++++##+''';::;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::,,,..,,..,;'+###+';;;+++';;'+#@#####+'''';;;;;;;;;;;;;;;;;;;;+#@@@@@#@@@###+';::::::::::::::,,,;++''';:...````..``.,::::::::::::::::,.
::::::::::;;::::::::::,,,,,,,,,,,,,,,,,,,,,,...............,.,:;::::::;:;'++';'+#############++####@@@##++'';;;;;;;;'''++++++###++++';;;;;;'';;;;;;;;;;;;;;;;;;;;;;:::,,,,,,,.,:'+++##+;;;'++'';'+#######+'''';:;;;;;;;;;;;;;;;;;'+#@##@@@@@@@#+++';;:;;;::::;;;::,,,:'++''';:,,...,,.```.,::::::::::::;::,,
::::::::::;;;:::::::::,,,,,,,,,,,,,,,,,,,,,,...............,.,::;::;::::;'++'''+####+########+#####@@@##++'';;;;;;''''++++###+##+'++'';;;;;''''';''';;;;;;;;;;;;;;::::,,.,:,,.,''+++##';;;+#';;''+##++#@+;;'';::;;;;;;;;;;;;;;;;'#@@@#@#@@@@@#++';;;:::;;;;;;'':;:,,,,;+#+##+;::,,:::,.```,:::::::::::::::::
::::::::::;;;:::::::::::::::::,,,,,,,::,,,,,,,,............,,,,;:;:;;::;;''''''+#+##++##############@@##++''';;;;'''++++++++####++++#+'';;'''''';''';;;;;;;;;;;;;;::::,,,,:,.,:'++++#+';:'++';;'+#@+'#@+;;';;:::;;;;;;;;;;;;;;'+@@@##@@@@@@@##++';;::::;;;;;'''';::,,,:;+####':,:::;';,````,::::::::::::::::
::::::::::;;;;:::::::::::::::::::::::::::,,,,,,,...........,,,,:;;:;;;:;'''''''+#+##++##################++''''''''+++++#+#######+++##+++'''''''''''''''''';;;;;;;;::::,,,,:,,,;++++##+;:;'++';;+#@#+#@+''';;:::;;;;;;;;;;;;;'+#@###@@@@#@@@@##+';;:::::;;;'''++'';:,,,,;++###',,,::;';,.`...,:::::::::::::::
:::::::::::;;;;;::::::::::::::::::::::::::,,,,,,..............,:;;;;;;;;''''''+#++#####################++''''''''+++++#########+++++######+++++++++++###+''''';;;;:;:::::::,,:'++++##'::'+++;;'###'+@#';;;;:,:;;;;;;;;;;;;'+#@@@@@@@@@##@@@@#+';;:::::::;;'''+++';:::,,:'+###;..,::;'':....,,:::::::::::::::
;;:::::::::;;;;;;:::::::::::::::::::::::::,,,,...............,,:;;;;;;;;''''''+#++#####################++''''''''+++++++#######+++++#####################+++''';;;;;;;:::::,,;'++++#+;:;'++';'+##''##+'';;:,::;;;;;;;;;;'+#@@@@#@@@@@@@#@@@##+';;:,,,,:::;'''+++'';:::::;+##+:..,:;;+';,,,,,,:::::::::::::::
;;::::::::;;;;;;;;;;::::::;;;;::::::::::::,,,,..............,,,::;;;;;;''''''++#+##++##################+++''''''+++++++#######+++#+++################@#####++''';;;;;;;;;;:::;'''+++'::;+++;;+##+'+@#'';;:,,:;;;;;;;;;'+##@@##@@@@###@@@@@@##+';::,,,,,::;;;'''++'';;;:;;+#+;:,,:;;'++;,,,::::::::::::::::::
;;;::::::::;;;;;;;;;;;;;;;;;;;;;::::::::::,,,,.............,,,,,:;;;;;'''''''+#++##+###################+++++++++++++###########+###++###############@@@######+'';;;;';;;';::;''''++'::;'#+';'##';+##+';;::,:;'';;;;''+##@@@@##@@#@@@@@@@@@##+';;:,,,,,,:::;;;'''+++''''++##;:,::;;'++':,,,:;::::::::::::::::
;;;::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,.............,,,,,:;;;'''''''+++#++##+#######@########@##+++++++++++++++#####++##############@@@###@@@@@@@@@@###++';;;'''''';;;''''+';::;+#+''+#'''#@++';::::;;';;;''+##@@@@@@@@##@@@@@@######+';:,,,,,,,,:::;;;''+++++++###':,:;''''++;,,,,::::::::::::::::::
;;;;::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,............,,,,,:;;'''''''+++##++##+#######@###########+++++++++++++####+##++###################@@@@#@@@@@@@@##+'''''++++';;;;'''';:::'#++''#+;'+#@+';;:,:;''';;'++#@@@#@@@@#@@@@@#########++';:,,,,,,,,,,::;;'''++++#+##+'::;'++++++;,,,,:,::::::::::::::::
;;;;;:::::::::;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,........,,,,,,:;'''''++++++#####################@##########+++###########+++##################@@#######@@@@###+++++###++;;;;'''';:;'+@+''++;;'#@#';;:,,:''''''###@@@@@@@@@###############+';::,,,,..,,,,,:;;;''++++++##+;:;'+##+#+;:,,,,::::::::::::::::::
;;;;;;::::::::::;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,......,,,,,,,:;'''''++++++#####################@###########++###########++#############################@@@###########++';;:''''::'+##++'''''+@@+';:,,:;''''#@@@@@@@@@@@@@###############+';::,,.......,,,:;;''+###++#+'::;'+####+;:,,::::::::::::::::::::
;;;;;;;:::::::::::::;;;;;;;;;;;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,:''+++++++++####################@@@@#################################################################@@#+';:;'+';:;+##++'';;'+#@#+';:,:'''+##@@@@@@@@@@@@@###############++';:,,.........,,:::;'+###+++#+';'''+###':,,:;;;::::::::::::::::,
;;;;;;;;:::::::::::::::;;;;;:::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,;''+++++++#####################@@@@####################################+++++####################@@##@@#+;::''+':;+###++';;;'+@@#+':,:'++##@@@###@@@@@@@@###############++'';::,..........,,::;''###++'+++;;;:;+#+;:::;;;;:::::::::::::::,,
;;;;;;;;;:::::::,,,:::::::::::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,..,;+++++++++#####################@@@@@###################################++++++#######################@@#+;:;''';;'#####'';;'+#@@#+;::'#@@@@@#@@@@@@@@@@@#########+++++++++';;::,,..........,,::;'+##+';;'':,,,,:;;::;;'';:::::::::::::::::,
'';;;;;;;;::::::,,,,,:::::::::,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,......:'++++++++######################@@@@@#################################++++++++++####################@@@+;:;'';;'+####+'';;'#@@@+';:;+@@@@@@@@@@@@@@@##@#######++++++++++'';;::,,..........,,,:;'+##+;:,,.``....,:::;'+';:,::::::::::::::::
''';;;;;;;::::,,,,,,,,,:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.......,;++++++########################@@@@@#################################++++++++++#####################@#+;:;'';'+++##+''';;'#@@#+';;'#@@@@@@@@###@@@@@######+++++++'''''''';;::,,,..........,,,:;'+#+;:.``  `,..,:::;'';:,,,,::::::::::::::
''';;;;;;;::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,...,,,,,,,,,,,,,,........:+++###########################@@@@@@###############################++++++++'++#################+#####'::'+';'+++##++';;'+#@@#+';;'#@@@@@@#@@@@@@@@#######+++++''''''''';;;::,,,,..........,,:;'+++;:,.``  ..,,::::;;::,,,,::::::::::::::
''';;;;;;:::::,,,,,,,,,,,,,,,,,.,,,,,,,,..........,,,,,,,,,.......`,'++++##########################@@@@@############################+++++++++++++######+#+++#####+++++#+';:;''''''++#+''';'+#@@@#+';'+#@@@@@@@@@@@@@@@######++++'''''''';;;;;;:::,,,..........,,::;'++':..`  `.,,;';:;;:,,,,,,,:::::::::::::
''';;;;;;:::::,,,,,,,,,.,,,,......................,,,,,,,,,,........;+#++##########################@@@@@@###########################+++++++++++########+++++++##++++++++';;''''''++';;'''''+#@@##+';'+#@@@@@@@@@@@@@@@#####+++''''';;;;;;;;;;;:::,,,...........,,,;'++':.``` ``,:;'';;::,,,,,,,:,:::::::::::
'''';;;;;:::::,,,,,,..............................,,,,,,,,,,....`...,'#++###########################@@@@@@######################++++++++++++++#@@########+++''+#++++++++;;'++'''++'::'+'''+######+;;'#@@@@@@@@@@@@@@@@#####+++'''';;;;;;;;;;;;::::,,,...........,,:;'+':,``  ``,:;'+':,,,,,,,,,,,,,:::::::::
''''';;;;:::::,,,,,,..............................,,,,,,,,,,,......`.;+#+###########################@@@@@@@@###################+++++++++++++++#@@##########+''++++++++++'''+'''++'::;+';''++#####+;'+#@@@@@@@@@@@##@@@#####++'''';;;;;;;;;;;;;;::::,,,..........,,:;'+';,``` `.:;:;';,...,,,,,,,,,,,::::::::
'''''';;;:::::,,,,,,..............................,,,,,,,,,,,,......`,'##############################@@@@@@@@@@@###############++++++++++++###@@###########++'''++++++++'++'''++;::'++''''+++###+';'+@@@@@@@@@@@@@@@@#####+++''';;;;;;;;;;;;;;;;::::,,,..........,,:;'';,.````,:';;:,....,,,,,,,,,,,,:::::::
'''''';;;;::::,,,,,.............```````````.......,,,,,,,,,,,,,.....`.:+##+##########################@@@@@@@@@@@@@############++++++++++++##@@@#############++''''+++++++++'''++;''++'''''+#####+''+#@@@@@@@@@@@@@@@######++''';;;;:::::;;;;;;;;;::::,,,..........,::;';,,```.;''':,...`..,,,,,,,,,,,,::::::
'''''''';;::::,,,,,,.......`````````````````......,,,,,,,,,,,,,,.....`,;+#############################@@@@@@@@@@@@@@@@##########++++++####@@@@@##############+++'''++++++++'''++##++'''''+####++'''+#@@@@@@@@@@@@@@@#####+++'';;;;;::::::;;;;;;;;;::::,,,.........,,:;;;:,```.:';::,...`..,,,,,,,,,,,,::::::
'''''''';;;:::::,,,,.......`````````````````......,,,,,,,,,,,,,,.....`.,'##+##########################@@@@@@@@@@@@@@@@@@#############@@@@@@@@##@###############++''++++++++'''+++++'''''++###++;;'+#@@@#@@@@@@@@@@@@@####+++'';;;;::::::::;;;;;;;;;:::,,,,.........,::;;:,.```.,,,..`..``.,,,,,,,,,,,,::::::
'''''''''';:::::,,,,,.....``````````````````......,,,,,,,,,,,,,,,.....``:+@#+#########################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@################+++'''+++++''+++''''''''++##++';;'+@@@@@@@#@@@@@@@@#@####++''';;;;:::::::::;;;;;;;;;;::,,,..........,,:::,.`    ```.`````...,,,,,,,,,,::::::
'''''''''';;;:::,,,,.......``````````````````......,,,,,,,,,,,,,,,....``.:+##########################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#########@@@@@##################++'''++++'''''';;'''''++##+''+'+#@@@#@@@@@@@@@@@######+++''';;;::::::::::;;;;;;;;;;;::,,,..........,,:,,.``    ``.``````...,,,,,,,,,::::::
''''''''''';;;:::,,,,.......``````````````````.....,,,,,,::,,,,,,,.....``.;+##########################@@@@@@@@@@@@@@@@@@@@@@@@@@@#########@@@@@@###################++''''++''''';;;'''''+##++++++#@@#@@@@@@@@@@#@#######+++''';;:::::::::::;;;;''''';;;::,,,,.........,,,..```   ``.``````.....,,,,,,,::::::
'''''''''''';;::::,,,,......``````````````````.....,,,,:::::::,,,,,.....`.,'#############################@@@@@@@@@@@@@@@@@@@@@@@#######@##@@@@@@####################+++''++'''';;'''+'''+#####+'+#@@#@@@###@############+++'';;;;:::::::::;;;;'''''''';;::,,,..............```   ``.```````....,,,,,,,,,::::
''''''''''''';;;::,,,,.......`````````````````.....,,,:::::::::,,,,......``,'##+##########################@@@@@@@@@@@@@@@@@@@#############@@@@@@######################++''''''';''''''''+###+''+@@@@@##################++++'';;;;::::::::::;;;''''''''';;:,,,,............````   ``.````````....,,,,,,,,::::
'''''''''''''';;:::,,,,.......````````````````.....,,,::::::::::,,,,......`.,'##############################@@@@@@@@@@@@###########@@###@@@@@@@#######################++''''''';''''''''+##+''+@@@#@@###########+###+++++++''';;;::::::::::;;;'''++++'';;::,,,............`````  ````````````...,,,,,,,,::::
'''''''''''''''';;::,,,,.......`````````````......,,,:::::::::::,,,,,........,'####################################################@@@@@@@@@@@#########################+++''';;;''''''''+++''#@@@##@@@#####++++++++++++++++''';;;;::::::::;;;;''++++++''';::,,,,.........``````` `````````````...,,,,,,,,:::
'''''''''''''''';;;::,,,,.......```````````.......,,,::::::::::::,,,,,........:'################################################@@@@@@@@@@@@@@##########################++''';;;'''''''''''##@@@@@@@######++++++''''''+++++''';;;;::::::::;;;'''+++++++'';;::,,,........``````````````````````...,,,,,,,,:::
'''''''''''''''''';;::,,,,,.......```````........,,,:::::::::::::,,,,,,,......,:'###############################################@@@@@@@@@@@@@@####################+#######+'';;;';;'''''+###@@##@@@#####+++''''''''''''''''''';;;;:::;::;;;;;'''+++++#++'';:::,,,.........``````````````````````..,,,,,,,,,:
'''''''''''''''''';;;:::,,,,,.......```.........,,,,::::::::::::::,,,,,,,,.,,.,,;'#############################################@@@@@@@@@@@@@@@############################++';;;;;;;;;;'+###@@#@@@@####+++'''''';;;'''''''''''';;;;::;::;;;;;'''++++###++'';:::,,.........``````````````````````...,,,,,,,,,
'''''''''''''''''''';;::::,,,,................,,,,,:::::::::::::::::,,,,,,,,,,,,,;'+##########################################@@@@@@@@@@@@@@@@######################+######++';;;;;;;:;;+#@@@@@@@@####+++''';;;;;;;;;;;;''''''';;;;;;;;;;;;;''''++++###+++';;:::,,,..................````````````..,,,,,,,,,
''''''''''''''''''''';;;:::,,,,,,,........,,,,,,,,:::::::::::::::::::::,,,::,,:::;;++#######################################@@@@@@@@@@@@@@@@@##########+############++######+'';;;;;;:::;+#@@#@@#####+++''';;;;;;;;;;;;;;'''''';;;;;;;;;;;;;''''++######++'';;:::,,,,................````````````...,,,,,,,,
'''''''''''''''''''''';;;;::::,,,,,,,...,,,,,,,,:::::::::::::::::::::::::::::::;;;''++#####################################@@@@@@@@@@@@@@@############++############+++######+'';;;;;;:,,;#@##@#####+++''';;;;::::;;;;;;;;''''';;;;;;;;;;;;''''+++######++''';;:::,,,,...............`````````````..,,,,,,,,
''''''''''''''''''''''''';;;::::,,,,,,,,,,,,,,:::::::::::::::::::::::::::::::;;;''+++++#################################@@@@@@@@@@@@@@@@@@############++#############++#######+';;;;;:::,:+###@#####+++'';;;::::::::::;;;;;''''';;;;;;;;;;''''+++++#####+++'';;;::,,,,,,....,,,,......````````````...,,,,,,,
''''''''''''''''''''''''''';;;::::::::::,:::::::;;;;::::::::::::;;;;;;;;;;;;;''''+++++++##############################@@@@@@@@@@@@@@@@@@@@############+########################+';;;;;::::'###@#####++'';;;:::::::::::::;;;''''';;;;;;;;''''''+++++##++++++''';;::::,,,,,,,,,,,,,,....`````````````...,,,,,,
''''''''''''''''''''''''''''';;;;;;::::::::::;;;;;;;;::::::::::;;;;;;;;;;;'''''++++++++++##########################@@@@@@@@@@@@@@@@@@@@@@############++#################+######++';;;;;:::'###@####+++'';;;:::::::::::::;;;;'''';;;;;;;;''''''++++++++++++'''';;;::::,,,,,,,,,,,,,,,..`````````..``...,,,,,,
'''''''''''''''''''''''''++'''''''';;;;;;;;;;;;;;;;;;;;::::::;;;;;;;;;;''''''++++++++++++#######################@@@@@@@@@@@@@@@@@@@@@@@@#####@@######+++#++++############+++####++';;;;:;:'###@####++''';;;:::::::::::::;;;;'''''';;;;;;'''''++++++++++++''''';;;::::::::::,,::,,,,,...````````.`.....,,,,,,
;;;''''''''''''''''''''''+++++''''''''''''''''''';;;;;;;::::;;;;;;;'''''''''+++++++++++++##########################@@@@@@@@@@@@@@@@@@@@@#####@@######+++#+++++############++#####+';;;;:;:'###@####++''';;::::::::::::::;;;;''''''';;;''''''++++++++++++'''''';;;::::::::::::::,:,,,,,..```````.......,,,,,,
;;;;;'''''''''''''''''''+++++++++++++++++''''''''';;;;;;;;;;;;;;;;'''''''++++++++++++++++###########################@@@@@@@@@@@@@@@@@@@######@@@####++++++++++#############++#####+';;;;::;+#######++'';;;::::::::::::::;;;;''''''''''''''''+++++++++++'''''';;;;;:::::::::::::::,,,,,,.```````.......,,,,,,
;;;;;;;''''''''''''''''+++++++++++++++++++'''''''';;;;;;;;;;;;;;;;;'''''++++++++++++++++#################@@@@###@@@@@@@@@@@@@@@@@@@@@@#######@@@####+++#++++++##############+######+';;;::;+#@#@##+++'';;;:::::,,,::::::;;;;'''''''';'''''''++++++++++''''';;;;;;::::::::::::::::,,,,,,.```````.......,,,,,,
;;;;;;;;''''''''''''''++++++++++++++++++++'''''''';;;;;;;;;;;;;;;;;'''''++++++++++++++++################@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@######@@@@####+++#++++++######################+';;::;'#@####+++'';;;::::::,,::::::;;;;''''''''''''''''++++++++++'''';;;;;;::::::::::;::::::,,,,,,.```````.......,,,,,,
::::;;;;;;'''''''''''+++++++++++++++++++'''''';;;;;;;;;;;;;;;;;;;;;'''''++++++++++++++++##############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@######@@@@####+++#+#++++######################++;;:::;######+++'';;;::::::::::::::;;;;''''''''''''''''++++++++++'''';;;;;::::::::::::::::::,,,,:,,.```````........,,,,
:::::;;;;;;;''''''''''++++++++++++++++++''';;;;;;;;;;;;;;;;;;;;;;;;;''''++++++++++++++++########+++####@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@#####@@@@@####++++####++########################';:;:;+#@###+++'';;;:::::::::::::;;;;;''''''''''''''''+++++++++''''';;;;:::::::::::::::::::,::,:,,.```````........,,,,
::::::::;;;;;;;;;'''''''+++++++++++++'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++++++++++++########+++#####@@@@####@@@@@@@@@@@@@@@@@@@@@@####@@@########+++####++########################+';;:;+#@###+++'';;;:::::::::::::;;;;;'''''';;;;;'''''++++++++''''';;;;:::::::::::::::::::,,:::,,,..```````.......,,,,
,,::::::::;;;;;;;;;;''''''++++++++++'';;;;::::::::;;;;;;;;;;;;;;;;;;;;;''''+++++++++++++########++++####@@@@@####@@@@@@@@@@@@@@@@@@@@@####@@###########+######+#######+++##############+';::'#@###+++'';;;;:::::::::::;;;;;;;;;;;;;;;;;;;''''+++++++''''';;;::::::::::::::::,:::,,,::,,,..``````........,,,,
,,,:::::::::;;;;;;;;;;'''''+++++++''';;;::::::::::::;;;;;;;;;;;;;;;;;;;;;''''''''++++++++#######++++####@@@@@####@@@@@@@@@@@@@@@@@@@@@########################++#####+++++++###########++;:;'#####+++''';;;::::::::::;;;;;;;;;;;;;;;;;;;;;''''''+++'''''';;;::::::::::,,,,,,,,,,,,::,,,.`````````.......,,,,
,,,,:::::::::::::::;;;;;''''''++''';;:::::,,,,,:::::::;;;;;;;;;;:::::::;;;;;'''''''+++++++######+++++####@@@@#####@@@@@@@@@@@@@@@@@@@#########################++#####++++++++#######+####';;;+####+++''';;;;:::::::::;;;;;;;;;;;;;;;;;;;;;;'''''''''''''';;;:::::,,,,,,,,,,,,,,,,,,,,,.````````.`.......,,,,
,,,,,,,,,::::::::::::;;;;;'''''''';;;:::,,,,,,,,,,::::;;;;;;;;:::::::::::::;;;;'''''++++++######++++++###@@@@#####@@@@@##@@@@@@@@@@###########################++#####++++++++###+######+##+;;+####+++''';;;;;::::::::;;;;;;;;;;;;;;;;;;;;;;;''''''''''''';;;::::,,,,,,,,,,,,,,,,,,,,...`` ```...`......,,,,,
,,,,,,,,,,,,,:::::::::;;;;;''''';;;::::,,,,,,,,,,,,,:::;;;;;;:::::::::::::::;;;;;''''+++++#########++++###@@#####@@@@@@######@@@@@#############################+######++++++++##++#####++##';'#####+++''';;;;;:::::::;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''';;;::::,,,,,,,,.............```   `....`......,,,,,
.,,,,,,,,,,,,,,,,,,,::::;;;;;;;;;;::::,,,,,,,.,,,,,,,:::;;;;::::::,,,,,,,,::::;;;;;''+++++#########+++++##@@####@@@@@@@########@###############################+#######++++++++++++########+''+###++++''';;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''';;;;:::,,,,,,,,............`````  `....`.....,,,,,,
...,,,,,,,,,,,,,,,,,,:::::;;;;;;;;::,,,,,.........,,,,::::::::::,,,,,,,,,,,,:::;;;;;''++++###########++++#######@@@@@@##################################################++++++++++++#####++++++###++++''';;;;;;:;;:::;;;;;;;;;;;;;;;;;;:::;;;;;;;'''''''';;;;:::,,,,,,,............`````   ``.........,,,,,,
...,,,,,...,,,,,,,,,,,:::::::;;;;::,,,,............,,,,:::::::,,,,,,,,,,,,,,,:::;;;;''++++############+++#######@@@@@###########################################+#######++++++++++++#####+++++#+##+++''';;;;;:::::::::;;;;;;;;;;;;;;;;;:::::;;;;;;';;'''';;;:::,,,,,,,,.........`..`````   ``.........,,,,,.
....,,..........,,,,,,,,::::::::::,,,...............,,,,,,,,,,,,,,,.,....,,,,,:::;;;'''+++############+++#########@@@@###########################################++######+++++++++++++##+##+++++##++'''';;;;::::::::::::;;;;;;;;;;;;;;:::::::;;;;;;;;;''';;;:::,,,,,,,,......```````````    ``.`......,,,,,.
....................,,,,,,::::::::,,,................,,,,,,,,,,,,,.........,,,::::;;;''+++##############+########@@@@@############################################+######+++++++++++++++####++'+++++''';;;;:::::::::::::;;;;;;;;;;:::::::::::;;;;;;;;;;'';;;:::,,,,,,,,......```````````    ``........,,,,..
......................,,,,,,,:::,,,,........`.........,,,,,,,,,..............,,::::;;;'+++######################@@@@@##############################################+###+#+++++++++++++++++##++++++++'';;;:::::::::::::::::;;;;;;::::::::::::::;;;;;;;;;;;;;;:::,,,,,,,,.....`````````````` ```.........,....
.......................,,,,,,,,,,,,........``````.......,,,,.................,,,:::;;;'+++#################+++##@@@@##############################################++#+++#+++++++++++++++++####++''''';;;:::::::::::::::::::;;;::::::::::::::::;;;;;;;;;;;;;;:::,,,,,,,,,...```````````````````.`............
........................,,,,,,,,,,,.......````````............................,,,:::;;'+++################++++##@@@################################################+#####+++++++++++++++++++##++'''';;;:::::::::::::,:::::::::::::::::::::::::;;;;;;;;;;;;;;:::,,,,,,,,,...``````````````````...............
..........................,,,,,,,,......```````````...........................,,,,::;;'+++################++++#@@@@@####################################################+++++++++++++++++++++#+++';;;;;:::::::::::,,,,,::::::::::::::::::::::::;:::;;;;;;;;;::::,,,,,,,,...````````````.....................
...........................,,,,,,,......`````````````.............```````......,,,,::;'+++################++'+##@@@@####################################################+++++++++++++'''''+++++++';;;;;:::::,,,,,,,,,,,,::::::::::::::::::::::::::::::::;;::::::,,,,,,,,...```````..........................
............................,,,,,......````````````````.........``````````......,,,::;'++++#############+++'''+##@@@#################################################+++###++++++++''''''++++++++';::::::::,,,,,,,,,,,,,,,,:::::::::::::::::::::::::::::::::::::,,,,,,,,....``````..........................
......................................``````````````````........``````````......,,,::;''++###############++'''''+#@@#########################################################+++++++''''''''++++++';::::::::,,,,,,,,,,,,,,,,,,,,::::::::::::::::::::::::::::::::,,,,,,,....````````.....................````
.......................................```````````````````````````````````......,,,::;''++##############++''';;;'+#@@@#####################++++++++++++###############+++++++++++++++++++++++'''+'';:::::::,,,,,,,,,,,,,,,,,,,,,,,::::::::::::::::,,,,,,,::::::::,,,,,,...``````````...........`........````
.......................................```````````````````````````````````......,,,::;''++#############+++''';;;;'##@@#####################+++++++++++++++++++++++++++++'''''''''''''''''++++++++'';:,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::::::::,,,,,,,,,,,,,:::::,,,....`````````````.......``...`````````
.......................................```````````````````````````````````......,,,::;;'++############+++'''';;;:;'+#@@#####################++++++++++++++++++++'''+'''''''''''''''''''';''+#####++':,,,,,,,,,,,,,,,..,,.....,,,,,,,::::::::::::,,,,,,,,,,,,,,,:::::,,...`````````````````...```````````````
......................................``````````````````````````````````````....,,,::;;'+++##########+++'''';;;;;;;'#@@###+###+########+###++++++++++++++++++++++++++''''''''''''''''''';;''+###@###',,,,,,,,,,,,................,,,,,::::::::::,,,,,,,,,,,,,,,,::::,,...```````````````````````````````````
......................................```````````````````````````````````````....,,,::;'+++##########+++''';;;;;;::;+#####++#++########+###++++++++++++++++++++++++++''''''''''''''''''''';''+#@@@@@',.,,,,,,,,,..................,,,,,::::::::,,,,,,,,,,,,,,,,,::::,,...```````````````````````````````````
......................................```````````````````````````````````````....,,,::;'+++#########++++'''';;;;;;::;'+###+++++########+###++++++++++++++++++++++++++'''''''''''''''''''';;;'+#@#@@+:....,,,,,,,..................,,,,,::::::::,,,,,,,,,,,,,,,,,:::::,..````````````````````````````````````
......................................```````````````````````````````````````....,,,::;''++#########+++'''';;;;;;;;::;+###+++++############+++++++++++++++++++++++++++'''''''''''''''''';;;''++#@@#',......,,,,.....................,,,,::::::::,,,,,,,,,,,,,,,,::::,,..````````````````````````````````````
......................................````````````````````````````````````````....,,::;''++########++++'''';;;;;;;;:::;+##++++#+###+++++###+++++++++++++++++++++++++++''''''''''''''''''';;'''+#@@',....,,,,..,,.........``..........,,,:::::::,,,,,,,,,,,,,,,,,:::::,..````````````````````````````````````
,,,...................................````````````````````````````````````````....,,::;''++########+++''''';;;;;;;;:::;+##++++++##++++++###++++++++++++++++++++++++++++''''''''''''''''''';'''+#@+:...................```````........,,,::::::::,,,,,,,,,,,,,,,,:::::,..```````````     ````````````````````
,,,,,,,,,,............................````````````````````````````````````````....,,::;''++########+++''''';;;;;;;;::::'###+++++++++++++###++++++++++++++++++++++++++++''''''''''''''''''';'''+#+:.....,.............``````````......,,,:::;;::::,,,,,,,,,,,,,,,:::::,..````````        `  `````````````````
,,,,,,,,,,,,..........................````````````````````````````````````````....,,::;'+++########+++''''';;;;;;;;:;::;+##++++#++++++#####++++++++++++++++++++++++++++''''''''''''''''';';''''';.`....,.............````````````....,,,:::;;;:::,,,,,,,,,,,,,,::::::,,.``````````         `````````````````
,,,,,,,,,,,,,,........................````````````````````````````````````````....,,::;'+++#######+++++'''';;;;;;:;:;;:;'##++++#+++++######+++++++++++++++++++++++++++++'''''''''''''''''';'''':.`.........,,.........````````````...,,,::;;;;;::,,,,,,,,.,,,,,,:::::,,.```````````        `````  ``````````
:,,,,,,,,,,,,,........................````````````````````````````````````````....,,::;'+++#######+++++''''';;;;;:;;;;::'+#++++++++++#######++++++++++++++++++++++++++++'''''''''''''''''';;;'':..........,,...........```````````...,,,::;;;;;;:,,,,,.....,,,,,::::::,..```````````         ``` ```````````
:::,,,,,,,,,,,,.......................``````````````````````````````````````......,,::;'+++#######+++++''''';;;;;;;;;;::;'##++++++++########++++++++++++++++++++++++++++''''''''''''''''';;';'':...`.......,..........````````````...,,,::;;;;;;::,,,,......,,,,::::::,..````````````        ```````````````
::::,,,,,,,,,,,.......................`````````````````````````````````````.......,,::;'+++#######++++''''''';;;;;;;;;;::'+#++++++++########+++++++++++++++++++++++++++++''''''''''''''''''';;;:..``..`..............`````````````...,,,:;;;';;;;:,,,,.......,,,::::;:,...``````````````     ``..``  `` ````
::::::::::::,,,,.......................````````````````````````````````````.......,,::;'++#######++++++''''''';;;;;;;;;;;;'++++++++#########+++++++++++++++++++++++++++++++'''''''''''''''';;;;:....`.................````````````...,,::;;'''';;::,,,,.......,,,:::::,,..```````````````       ``.`     ```
;;:::::::::::,,,,......................````````````````````````````````````.......,,::;''+#######+++++++''''''';;;;;;;;;;;'+++++++##########+++++++++++++++++++++++++++++++''''''''''''''''';;;:....`...................``````````...,,,:;;'''';;:::,,,,......,,,,::::,,..`````````````````      ...````````
;;;;:::::::::,,,,,.....................```````````````````````````````````.......,,,::;''++######++++++++''''''';'''';;;;;;'+++++###########+++++++++++++++++++++++++++++++''''''''''''''''';;;:....`...................``````````...,,,:;;''''';;::,,,,,.....,,,,::::,,..``````````````````     .,,........
;;;;;;;;;;;:::,,,,.....................```````````````````````````````````.......,,,,:;''++######++++++++''''''''''''';;;;;'+++++##@########+++++++++++++++++++++++++++++++''''''''''''''''';;;:....`...................`````````....,,,:;;''''';;::,,,,,.....,,,,::::,,..``````````````````    `.,,,,,.....
'';;;;;;;;;;::,,,,,....................``````````````````````````````````........,,,,:;;'++#####++++++++++''''''''''''';';;''+++############++++++++++++++++++++++++++++++'''''''''''''''''';;;:.........................````````....,,,::;''''';;:::,,,,,....,,,,::::,,..``````````````````` ``....,,....``
'''''''';;;;::,,,,,...................```````````````````````````````````........,,,,:;;'++#####++++++++++''++++++''''''';;'''++@@#########+++++++++++++++++++++++++++++''''''''''''''''''''';;:..........................``````.....,,,::;''+''';;::,,,,,,,,,,,,,::::,,..``````````````````````......``````
+++''''''';;:::,,,,,..................```````````````````````````````````.......,,,,,:;;'+++###++++++'++++++++++++++++''';;'''+#@@@#######++++++++++++++++++++++++++++++++''''''''''''''''''';;;,..........................```.......,,,:;;''++'';;:::,,,,,,,,,,,,::::,,..`````````````````````....````` ```
+++++'''''';;:::,,,,..................```````````````````````````````````.......,,,,,::;'++++#++++++'''+++++++++++++++'''';''+#@@@@#######+++++++++++++++++++++++++++++++++'''''''''''''''''';;;,................,,..................,,,:;;''+++';;:::,,,,,,,,,,,:::::,,..``````````````..`````..``````  ``.
+++++++'''';;:::,,,...................```````````````````````````````````........,,,,::;'++#+#++++++++'''++++++++##++++'''';'##@##########+++++++++++++++++++++++++++++++++'''''''''''''''''';;;,...............,,,..................,,::;;''+++'';;:::,,,,,,,,,:::;;::,..```````````````..````.```    ```..
+++++++++'';;;:::,,,..................```````````````````````````````````........,,,,::;'+++++++++++'+'''+++++++#####+++'''''#@@@@########+++++++++++++++++++++++++++++++++'''''''''''''''''';;;,...........,,..,,,..................,,,:;;''++++'';;::::,,,,,::::;;;::,..````````````.......``````   ````..
++++++++++'';;::::,,,.................```````````````````````````````````.........,,,,:;''+++++++++''''''+++++++######+++'''+#@@@@######++##++++++++++++++++++++++++++++++++''''''''''''''''';;;,...............,,...................,,::;;''+++++'';;::::::::::::;;;::,..``````````.......```` ````````````
++++++++++''';;:::,,,,,,,,............```````````````````````````````````.........,,,,:;;'++++++++'''''''+++++++######+++'''+#@@@@######++##++++++++++++++++++++++++++++++++''''''''''''''''';;;,.........,...,,,,.,,,..............,,,::;;''++#+++'';;::::::::::;;;;;:,..````````````...```````````````````
+++++++++++'';;;::,,,,,,,,,..........`````````````````````````````````````........,,,,:;;'+++++++++'''''''+++++########++++'+#@@@#########+#++++++++++++++++++++++++++++++++''''''''''''''''';;;,...`.......,,,,,,.,,,,.............,,,::;;''++###+++'';;;;;;;;;;;'';;:,..`````````````..```````````````````
+++++++++++''';;:::,,,,,,,...........`````````````````````````````````````........,,,,::;''+++++++''''''''+++++#########+++'+#@@@#########++++++++++++++++++++++++++++++++++''''''''''''''''';';:...`........,,,,,,,,,,.............,,,::;;'+++####+++'''';;;;;'''''';:,..``````````````````````````````````
++++++++++++'';;:::,,,,,,,..........``````````````````````````````````````........,,,,::;''+++++++''''''''+++++#########+++++#@@@#########++++++++++++++++++++++++++++++++++''''''''''''''''';';:........,,.,,:,,,,,,,,.............,,,::;;''++#####+++++''''''+'+++';:,..``````````````````````````````````
++++++++++++'';;;:::,,,,,,,.........``````````````````````````````````````.........,,,::;;'++++++'''''''''++++###########++++#@@@##########++++++++++++++++++++++++++++++++++'''''''''''''''';';:.......,,,,:;:,,,,,,,,............,,,,::;;''++#########++++++++++++';:,..````````````````..````````````````
+++++++++++++'';;:::,,,,,,,,.......```````````````````````````````````````.........,,,,:;;'+++++''''''''''++++###########++++#@@@########+++++++++++++++++++++++++++++++++++++''''''''''''''''';:...`...,,,,,::,,,.,,,,.......,,..,,,,:::;;''+#####################+';:,..```````````````......`````````````
+++++++++++++'';;;:::,,,,,,,.......```````````````````````````````````````.........,,,,:;;''++++''''''''''++++############+++##@@#######++++++++++++++++++++++++++++++++++++++''''''''''''''''';:...`....,:,::::,,...,,........,.,,,,,:::;;''++####################+';:,..`````` `````````........``````````
+++++++++++++''';;::::,,,,,,.......```````````````````````````````````````.........,,,,::;''++++''''''''''++++############++++##@#####++++++++++++++++++++++++++++++++++++++++''''''''''''''''';:...`....,:,:'';:,....,,.......,,,,,,,:::;;''++####################+';:,..``````     ```..`````````````.````
+++++++++#++++'';;;:::,,,,,,.......```````````````````````````````````````..........,,,::;''++++'''''''''+++++############+++++###++##+++++++++++++++++++++++++++++++++++++++++'''''''''''''''';:.......,;;;'#+;,,...,,.......,,,,,,,::::;;'+++#################++++;;:,..````````   ``````  `  ```.....````
++++++++++++++''';;::::,,,,,.......``````````````````````````````````````...........,,,::;;''+++'''''''''+++++#############++'+###++++++++++++++++++++++++++++++++++++++++++++++''''''''''''''';;.......,'++@@',....,,,,,,,,,,,,,,,,,::::;''+++##############++++++';::,..```````   ````    ````.......`````
++++++++++++++''';;;::::,,,,.......``````````````````````````````````````...........,,,::;;''+++'''''''''+++++#############++'++##++++++++++++++++++++++++++++++++++++++++++++++''''''''''''''';;.......,'++#':......,,,,,,,,,,,,,,,::::;;''+++###########+++++++++';:,,..``````    ``````.....,,....```````
+++++++++++++++''';;;::::,,,,......`````````````````````````````````````.............,,,::;''++'''''''''''++++#############++''+++++++++++++++++++++++++++++++++++++++++++++++++''''''''''''''';;.......,;;::,.......,,,,,,,,,,,,,,:::::;;''++++++++++++++++++++'''';:,,..`````` ``  ```.,,,,,,....`````````
+++++++++++++++''';;;;:::,,,,......`````````````````````````````````````.............,,,::;'''''''''''''''++++#############++'''''+++++++++++#++++++++++++++++++++++++++++++++++''''''''''''''';;,......,:,..........,,.,,,,,,,,,,:::::;;;''++++++++++++++++'''''''';:,,..`````````  ``.,,,,,,..````````````
++++++++++++++++''';;;;:::,,,......`````````````````....``````````````...............,,,,:;;''+''''''''''++++++############+++'''''++++++++++++++++++++++++++++++++++++++++++++''''''''''''''''';,......,..............,,,,,,,,,,:::::;;;'''+++++++++++++++''''''''';:,,..````````  ``.,:,,,,,..````````````
''++++++++++++++'''';;;:::,,,......``````````````````...``````````````...............,,,,:;;'''''''''''''++++++############+++'''''+++++++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,.....................,,,,,,,,,:::::;;;''''+++++++++''''''''''''''';:,,..``````````.,::,....```````````````
'''++++++++++++++'''';;;::,,,......``````````````````...``````````````..`............,,,,::;''''''''''''''++++++############++''''''++++++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,.....................,,,,,,,,,:::::;;;'''''++'''''''''''''''''''';;:,,..````````` .::,````````````````````
'''++++++++++++++'''';;:::,,,......`````````````````````..````````````..``............,,,::;;''''''''''''+++++++############+++'''''++++++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,........................,,,,,,::::;;;''''''''''''''''''''''''''';;;:,,..````````` .,,`  ``````````````````
''''+++++++++++++'''';;:::,,,.....```````````````````````....````````...`.............,,,::;;'''''''''''''++++++############+++'''''++++++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,.........................,,,,,::::;;;''''''''''''''''''''''';;';;;;:,,..``````````.,.  ```````````````````
'''++++++++++++++''''';;::,,,.....`````````````````````````.....`````.................,,,,:;;'''''''''''''+++++++###########+++''''''+++++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,.........................,,,,,:::;;;''''''''''''''''''';;;;;;;;;;;;:,,...`````````..` ````````````````````
'''++++++++++++++++''';;::,,,.....````````````````````````````````````................,,,,::;''''''''''''''+++++++###########+++'''''''+++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,..........................,,,,,:::;;;'''''''''''';;;;;;;;;;;;;;;;;;:,,,...``````````````.``..`````````````
''''''+++++++++++++''';;::,,,.....```````````````````````````````````..................,,,::;'''''''''''''''++++++###########+++''''''''++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,..........................,,,,,,::;;;''''''''''';;;;;;;;;;;;;;;;;;;:,,,...``````` ````.......`````````````
''''''''++++++++++++'';;::,,,.....`````````````````````````````````.............`......,,,::;''''''''''''''''++++++######@####+++''''''+++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,............................,,,,:::;;;;'''''';;;;;;;;;;;;;;;;;;;;;;::,,...`````````` ....,....````````````
''''''''++++++++++++'';;::,,,.....`````````````````````````````````............``......,,,::;;'''''''''''''''++++++######@####+++'''''''++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,................````........,,,,:::;;;;''';;;;;;;;;;;;;;;;;;;;;;;;;::,,...```````````.,,,,,...````````````
''''''''''++++++++++'';;::,,,.....`````````````````````````````````............``......,,,::;;'''''''''''''''++++++######@####+++'''''''++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,,.............````````........,,,:::;;;;';;;;;;;;;;;;;;;;;;;;;;;;;;::,,...```````` ``,,,,,,...````````````
''''''''''''+++++'++'';;::,,,.....````````````````````````````````............```......,,,::;;''''''''''''''''+++++######@@####+++''''''++++++++++++++++++++++++++++++++++++++++'''''''''''''''';,..............``````````.......,,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::,...```````` `.,,,,,,...``..........
''''''''''''''''''+''';:::,,,.....`````````````````````````````````...........```......,,,,:;;''''''''''''''''+++++####@@@@####+++'''''''++++++++++++++++++++++++++++++++++++++++++''''''''''''';,...........``````````````......,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::,...```````` `,::,,,,...............
'''''''''''''''''''''';::,,,,.....`````````````````````````````````...........```......,,,,:;;''''''''''''''''''++++###@@@@#####+++''''''+++++++++++++++++++++++++++++++++++++++++++'''''''''''';,..........```````````````......,,,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::,...```````` .:::,,,,...........,,,,
''''''''''''''''''''';;::,,,,.....````````````````````````````````.............``......,,,::;;''''''''''''''''''++++###@@@@@####+++'''''''+++++++++++++++++++++++++++++++++++++++++++''''''''''';,..........```````````````.......,,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::,..````` ``` .:::,,,,.......,,,,,,,,
'''''''''''''''''''';;;::,,,,.....````````````````````````````````.............``......,,,::;;'''''''''''''''''''+++##@@@@@@####+++'''''''+++++++++++++++++++++++++++++++++++++++++++''''+'''''';..........`````````````````......,,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,..``````````.;::,,,,,,,,,,,,,::::::
'''''''''''''''''''';;;::,,,,.....```````````````````````````````.............```......,,,::;;''''''''''''''''''+++###@@#@@@@@###+++''''''++++++++++++++++++++++++++++++++++++++++++++'''+'''''';............```````````````......,,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,..``````````.;::::,,:::::::::::;;;;
'''''''''''''''''''';;:::,,,,.....`````````````````````````````````............`.......,,,::;;''''''''''''''''''+++###@@#@@@@@###+++''''''++++++++++++++++++++++++++++++++++++++++++'''''+'''''';............``````````````.......,,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,..````````  .:::::::::::;:::;;;;;''
'''''''''''''''''''';;:::,,,,......`````````````````````````````````...................,,,::;;''''''''''''''''''+++###@@@@@@@@####+++''''''+++++++++++++++++++++++++++++++++++++++++'''''''''''';......`.....```````````..........,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,...```````` .:::::;;;;;;;;;;;;;''''
'''''''''''''''''''';;::::,,,..........```..`````````````````````````...........`......,,,::;;'''''''''''''''''''++###@@@@@@@@@###+++''''''++++++++++++++++++++++++++++++++++++++++++''''''''''';..............`````````.........,,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,...```````` .:::;;;;;''''''''''''''
''''''''''''''''''';;;::::,,,,..........`....```````````````````````..................,,,,::;''''''''''''''''''''++###@@@@@@@@@###+++''''''+++++++++++++++++++++++++++++++++++++++++++'''''''''';,...............................,,,,::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,...```````` .;;;;;;''''''''''''''''
''''''''''''''''''';;;;:::,,,,...............```````````````````````..................,,,,::;''''''''''''''''''''++###@@@@@@@@@###++++''''''++++++++++++++++++++++++++++++++++++++++++'''''''''';,..............................,,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,...``` `````.;;;''''''+''''''''''''
''''''''''''''''''';;;;::::,,,,,..............``````````````````````..................,,,,::;''+''''''''''''''''+++####@@@@@@@@###++++'''''''+++++++++++++++++++++++++++++++++++++++++'''''''''';,.............................,,,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,..```` `  ``,;;'''''+++++++++''''';
''''''''''''''''''';;;;:::::,,,,,.............``````````````````````.................,,,,::;;''+''''''''''''''''+++####@@@@@@@#####+++''''''''++++++++++++++++++++++++++++++++++++++++'''''''''';,.............................,,,,,:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:,,..```` `  ``,;;'''+++++++++++++''';
''''''''''''''''''';;;;;::::,,,,,,.....................```````..`....................,,,,::;;''+''''''''''''''''++++###@@@@@@@#####++++''''''''+++++++++++++++++++++++++++++++++++++'''''''''''';,............................,,,,,,:::;;;;;;'';;;;;;;;;;;;;;;;;;;;;;;:,,..```   `` .:''''++++++++++++++''';
''''''''''''''''''';;;;;;::::,,,,,..................................................,,,,:::;'''+''''''''''''''''++++###@@@@@@@#####++++''''''''+++++++++++++++++++++++++++++++++++++'''''''''''';,...........................,,,,,,:::;;;''''''';;;;;;;;;;;;;;;;;;;;;::,,..```   ```.:''''++++++++++++++''''
''''''''''''''''''';;;;;;::::,,,,,,................................................,,,,:::;;''+++''''''''''''''+++++####@@@@@@#####++++''''''''+++++++++++++++++++++++++++++++++++++'''''''''''';,...........................,,,,,::::;;'''''''''''';;;;;;;;;;;;;;;;;;:,,..````  `..`,''''+++++++++++++++'''
'''''''''''''''''''';;;;;:::::,,,,,,,,..................................,,,,,,,,.,,,,,::::;;''+++''''''''''''''+++++####@@@@@@######++++'''''''''+++++++++++++++++++++++++++++++++++'''''''''''';,..........................,,,,,,:::;;;'''''''''''''''''';;;;;;;;;;;;:,,..`  ```.```.;'''++++#+++++++++++''
'''''''''''''''''''';;;;;;;::::,,,,,,,,,..........................,,,,,,,,,,,,,,,,,,,:::::;;''+++''''''''''''''++++####@#@@@@@@#####+++++'''''''''++++++++++++++++++++++++++++++++++'''''''''+'';:........................,,,,,,::::;;;''''''''''''''''''''';;;;;;;;;;:,,.`  `..,.```.;'''++++#+++++++++++++
''''''''''''''''''''';;;;;;;::::,,,,,,,,,,,,,,,,,,,,,,,.,,,..,,,,,,,,,,,,,,,,,,,,,,,:::::;;;''++++''''''''''''+++++####@##@@@@@@####+++++'''''''''++++++++++++++++++++++++++++++++++'''''''''++';:.....................,,,,,,,,,:::;;;'''''''''''''''''''''''';;;;;;;;:,,.```,;';:.``.:'+'++++#####+++++++++
'''''''''''''''''''''';;;;;;;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::,,,,,,::::;;;;'''+++++'''''''''''+++++####@##@@@@@@####+++++'''''''''+++++++++++++++++++++++++++++++++'''''''''+++'':,,,..,.,,......,,,,,,,,,,,,::::::;;;'''+++''''''''''''''''''''''';;;::.```:'++';:.`.,'++++++######+++#++++
'''''''''''''''''''''';;;;;;;;::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::::::::::::::::;;;;;''+++++++'''''''''++++++########@@@@#####+++++'''''''''++++++++++++++++++++++++++++++++''''''''''+++'':,,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;;'''+++++++'++'''''''''''''''''';;::.``.;++;'';.`.,'++++++++####++##++++
'''''''''''''''''''''''';;;;;;;:::::::::::,,,,,,::::::::::::::::::::::;;;;;;;::::::;;;;;;;'''+++++++''''''''+++++++############@#####+++++++'''''+++++++++++++++++++++++++++++++++''''''''''++++':,,,,,,,,,,,,,,,,,,,,,,,,,:::::;;;;'''+++++++++++++''''''''''''''''';;:.`.;+';;'';.``.;+++++++#############
'''''''''''''''''''''''''';;;;;;::::::::::::::::::::::::::::::::;;;;;;;;''';;;;;;;;;;;;;;;'''++++++++''''''++++++++########@###@#####+++++''''''''+++++++++++++++++++++++++++++++'''''''''''++++':,,,,,,,,,,,,,,,,,,,,,,:::::::;;;''''++++++++++++++++++'''''''''''''';,``:;:,,''':.``.;+++++++##++++#######
'''''''''''''''''''''''''''';;;;;;::::::::::::;;;;;;;;;;;;;;;;;;;;'''''''''''''';;;;;;;'''''++++++++++++++++++++++#########@##@@######++++++'''''''+++++++++++++++++++++++++++''''''''''''''++++':::::::::::::,,::,,,::::::::;;;''''++++#####++++++++++++++++'''++'''';.`.;,``,'+;,```.:++++++######++++####
''''''''''''''''''''''''''''';;;;;;;;;;;:;;;;;;;'''''''''''''''''''''++++++++'''''''''''''''++++++++++++++++++++++########@@###@######+++++++''''''++++++++++++++++++++++++++'''''''''''''''++++;:::::::::::::::::::::::::::;;;''''+++############+++++++++++++++++''';.`,:``.:'':.````,'+'+++#+############
'''''''''''''''''''''''''''''';;;;;;;;;;;;;'''''++++++++++++++++++++++++++++++''''''''''''''++++++++++++++++++++++#############@######++++++''''''++++++++++++++++++++++++++''''''''''''''''++++;;;;::;;:::::::::::::::;;;;;;;''''++###################++++++++++++++':``::``.;'',.````.;+++++#+############
''''''''''''''''''''''''''''''''';;;;;;;;'''++++++++++++##################++++++'''''''''''++++++++++++++++++++++#####################++++++++''''+++++++++++++++++++++++++'''''''''''''''''++++';;;;;;;;;;;;;;;;;;;;;;;;;;;''''+++##############################+++#',`,:.``,''',``` `.;+++++##############
''''''''''''''''''''''''''''''''''''''''''++++#############################+++++'''''''''''+++++++++++++++++++++######################+++++''';;''++++++++++++++++++++++++''''''''''''''''''+++++'''''''''''';;;''''''''''''+++++####################################;.`::```:'';.`` ``.;'++++##############
''''''''''''''''''''''''+++++''''''''''+++++################################+++++'''''''''++++++++++++++++++++++######################++++';:,:;'''++++++++++++++++++++++'''''''''''''''''''+++++++++++'+++''''''''''+++++++++++################@@@@@@@@@@@@@@@@####+:`.;, `,'';,`````.,,;+++#++############
'''''''''''''''''''''''++++++++++++++++++++###############################++++++++''''''++++++++++++++++++++++++###############@#####++#';,.,:;;'''+++++++++++++++++++++''''''''''+''''''''''''+##++++++++++++++++++++++++++###############@@@@@@@@@@@@@@@@@@@@@@@@@+.`:,.``:;';.` ``....:'+++############++
''''''''''''''''''''''++++++++++++++++++++#################################++++++++'''''++++++++++++++++##############################';,,.,;:::;'++++++++++++++++++++++''''''''++++'''''''''''+###+++++#####+++++######++++###############@@@@@@@@@@@@@@@@@@@@@@#@@;``:,``.;'':```...```:'+++#+#########+++
'''''''''''''''''''''+++++++++++++####+++##################################++++++++++'''++++++++++++++++#############################':,..,;;:::;'++++++++++++++++++++++''''''+++++++''''''''''+###++++#####################++++###########@@@@@@@@@@@@@@@@@@@@@@#@#,`,:.``,'':. `...````,;+++############++
''''''++'''''''''''''+++++++++++++####+++##################################+++++++++++++++++++++++++++##############################':::,:;;::::;'++++++++++++++++++++++''''''++++++++++'+'''''+###++++######################++############@@@@@@@@@@@@@@@@@@@@@@@@+``;:``.;';,`...``````,;+++#############+
''''++++''''''''''''++++++++++++++##########################################+++++++++++++++++++++++++##############################'::;:,;';::::;''++++++++++++++++++''''''''+++++++++++++'''''++##++++####################################@@@@@@@@@@@@@@@@@@@@@@@#; .;..`.;;,.....``````.:'+++############+
''''''''+++++++++''++++++++++++++++##########################################+++++++++++++++++++++++#############################';::;:,:;;::;;:;'''++++++++++++++++''''''''++++++++++++++'''''+++##+++####################################@@@@@@@@@@@@@@@@@@@@@@@+,`,:``.,';,.,.````````.,'+##############+
''''+++++++++++++++++++++++++++++++++#########################################+++++++++++++++++++++############################+':,,::::;';::;;:;;;''''++++++++++++''''+++++++++++++++++++'''''++###+######################################@@@@@@@@@@@@@@@@@@@@@@@'..:,``.;+;:,..``````.``.;+#############++
++++++++++++++++++++++++++++++++++++##########################################+++++++++++++++++++++#####################+#####+;,,,::::;';::;;:;;:;''''++++++++++++''''+++++++++++++++++++'''''++###########################################@@@@@@@@@@@@@@@@@@@@@#;`.;,``,'+;,..`````..`.`.:'+############++
+++++++++++++++++++++++++++++++#+##############################################+++++++++++++++++++###################++#++###':,,::;;::;';:;';;:::;'''''++++++++++''''+++++++++++++++++++++'''''############################################@@@@@@@@@@@@@@@@@@@@@#,`:;.`.:+';,.````..``````,;+##########++++
++++++++++++++++++++++++++++++################################################+++++++++++++++++++++####################++##+':,:::::;::'';;;';;;::;;'''+++++++++++''''+++++++++++++++++++++''''+############################################@@@@@@@@@@@@@@@@@@@#@'..';``.;+':.`````````````.;++#########++++
+++++++++++++++++++++++++++++#################################################+++++++++++++++++++++++##################+##+'::::::;;;;;'';;'';;';::;;''''++++++++++++++++++++++++++++++++++''''+############################################@@@@@@@@@@@@@@@@@@@@#:`,',``,'+;.`````.````````.:'+#########++++
+++++++++++++++++++++++++++++#################################################+++++++++++++++++++++++##################+#+'::::::;++';;+';;'';'+'::;;'''''+++++++++++++++++++++++++++++++++''''+############################################@@@@@@@@@###@##@@@@@+,`:;.`.;'',````...````````.:'+#########++++
+++++++++++++++++++++++++++++#################################################++++++++++++++++++++++#################+##+';:::;'++#+;;'++''''''+';:;;'''''+++++++++++++++++++++++++++++++++''''+###########################################@@@@@@@############@@+..;:...;'',``...``````````.:'++########++++
+++++++++++++++++++++++++++++#################################################++++++++++++++++++++++####################+;::;'+++++';;'+'''++''+';:;;''''''++++++++++++++++++++++++++++++++'''++########################################@@@@@@@@@@##############'`,',`.,'';.....``````````..:;'+#########+++
+++++++++++++++++++++++++++++#################################################+++++++++++++++++++++###################++;:,;'++++++';'++'''++''+';;;;''''''+++++++++++++++#####+++++++++++++''+#########################################@@@@@@@@#############@##,`:;,`.:+':....``````````...,;'+#########+++
+++++++++++++++++++++++++++++#################################################++#++++++#+++++++++#####################+'::;++++++++';'+++++++''+';;;;'''''''++++++++++++########++++++++++++''+#########################################@@@@@@@@###############+..;;...;'',,..```````````...,:;+++########++
+++++++++++++++++++++++++++++###########################################################++++++++++####################':;'+++++++#++''++++++++'++;;;''''''''++++++++++############+++++++++++++#########################################@@@@@@@@@############@#;`.;:``,;';,,.``.`````````.,.,:;'+#++######++
+++++++++++++++++++++++++++++###########################################################+++++++++#################+##+;:'+++++++###+''+++++++++++';;'''''''++++++++++++###########++++++++++++##########################################@@@@@@@@##############+:`,':.,:'+;.`.`.`````````.,,,,::'+++++####+++
+++++++++++++++++++++++++++++#############################################################++++++#####################';'+++++#####++''++++++++++++';'''''++++++++++++++############+++++++++++##########################################@@@@@@@@##############+,`:';;'''':.``..````````.,,,,::,:+';;''+++'''
++++++++++++++++++++++++++++++##############################################################++++####################+;;++++++###++++''++++++++++++'''''++++++++++++++++#############+++++++++###########################################@@@@@@@###############'.`:''''++:....``````````.,,,,:,,,''::;;;;;;;;
++++++++++++++++++++++++++++++######################################################################################+'+++++#++++++++'+++#++++++++#+''''+++++++++++++++##############++++++++#############################################@@@@@################;``;''+'';.`...`````````.,,,,,:,.,''::;;;;;;::
++++++++++++++++++++++++++++++######################################################################################++#+++##++++++++++++#+++++++###++++++++++++++++++################+++++++##############################################@@@@#######+++#####+:`.;++'':....```````````.,,,,::,`.';:;;;;;;;;;
++++++++++++++++++++++++++++++#####################################################################################+'+++###+++++++++++++#++##++#####+++++++++++++++##################++++++###############################################@@@@#######++++##+#',``;+':,.`...`````````..,,,,:::,`.:;:;;;;;;;;;
++++++++++++++++++++++++++++++####################################################################################+;'#++##++++++++++++++#############++##+++#########################++++++###############################################@@@@#######++++##+#'.`..,..````````` `````.,,,:,:::.`.:;;;;;;;;;;;
+++++++++++++++'''''''''+++++++######################+##########################################################@':;+#+##+++++++++++++++##############++################################################################################@@@@@########+++#++#+:`````````````````````.,,::,::::,..,:;;;;;;;;;;
+++++++++++++'''''''''''+++++++##################++#####################################################@#@#@###';;;+++++++++++++++++++#################################################################################################@@@@@########++++++#+:```````.````````````..,:::,:,,:,..,::;;;;;;;;;
+++++++++++'''''''''''''++++++++#################+++####################################################@#@#@##+::;'+++++++++++++++##################@##################################################################################@@@@@########+++++++',````....``.````````.,,:,,,::::,,..,,::;;;;;;;;
++++++'+'''''''''''''''''+++++++##################+++#+++###+################################################@+;::;+++++++++++++++##################@@@@################################################################################@@@@@#######++++++++;.``````...`````  ```.,::,,,:::,,,...,::::;;;;;;
+++'''''''''''''''''''''''++++++############++###+++++++++++++#############################################@##;::;'+++++++++++++++####################@@################################+###############################################@@@@@######+++++++++:.`````.....`` `````.,,:::::,,,,::,..,::::;;;;;;
''''''''''''''''''''''''''++++++##########++''++++++++++++++++############################+++++#############+;:::'++++#+++++++++++#####################@@#########################+++++++###############################################@@@@@#####+++++++++',``````````````````.,,::,,,::::;'':..,,:::;;;;;;
''''''''''''''''''''''''''++++++##########++'''+++++++++++++++######################++++++++++++###########+;::;;+#+++++++++++++++######################@#######################++++++++++##############################################@@@@@#####+++++++++',..```````````.```.,,,,,,,::;''+++;,..,,:::;;;;;
''''''''''''''''''''''''''+++++++###########+++++##+++++++++++######################+++++++++++++#########+',::;++'+++++++++++++++########################@@###################++++++++++###############################################@@@@@#####+++++++'+',....``````..````.,,,,,,,:;'+++'++;,..,,::::;;;;
'''''''''''''''''''''''''''+++++#################+++++++++++++####################++++++++++++++#++#++####'::;'+++++++++++++++++++##############@@#######@@@@@################++++++++++++##############################################@@@@@#####+++++++++;,.....``...``` ``..,.,::;''''''''+',.,..:::;;;;;
'''''''''''''''''''''''''''+++++#################++++++++++++++###############+++++++++++++++++++#++##+##;,,:'++++++++++++++++++++##############@@#######@@@@@###############++++++++++++###############################################@@@@@######++++++++;,.......```````.....,:;;''';'''''+':...,,:::;;;;
'''''''''''''';;'''''''''''+++++#################++++++++++++++#############+++++++++++++++++++++#+++###;,,;'++++++++++++++++++++###############@@@@@@@######@@@@###########+++++++++++++##############################################@@@@@@######++++++++;,.....````..`````.,,:;;;;;;;;;''''';,.,,,,:::::;
'''''''''''';;;;';;''''''''+++++###############++++++++++++++++#############+++++++++++++++++++++++++##;,:'+#++++++++++++++++++################@@@@@@@@@@####@@@@@#########++++++++++++###############################################@@@@@@@######+++++'++;.....``````   `.,::::::::;;;;;'''''':,,,,,,,::::
'''''''';;;;;;;;;;;''''''''+++++##############++++++++++++++++#############++++++++++++++++++++++'+#++;,;++++++++++'++++++++++#################@@@@@@@@@@@@@@@@@@@@@######+++++++++++################################################@@@@@@@@#####+++++++++;,.....``  ```.,:::::::::;;;;;;;''''';:,,,,,,,,,,
'''''';;;;;;;;;;;;;''''''''+++++#############+++++'''''+++++++#############++++++++++++++++++++++++++;:;++++++#++''++++++++++###########@@######@@@@@@@@@@@@@####@@@######+++++++++++################################################@@@@@@@@#####++++++''+;,...`````.,::::,,,,,::::;;;;;;;'''''';:,,,,:::::
'''';;;;;;;;;;;;;;;''''''''+++++############++++'''''''''+++++############+++++++++++++++++++++++++';;;#++##++#+'''+++++++++##########@@@@@@####@@@@@@@@@@@@###############++++++++#################################################@@@@@@@@@#####++++++''+;,.`` `.,::,,,,,,,,,,:::::;;;;;;'''''''';::::::::
'';;;;;;;;;;;;;;;;;''''''''+++++############+++'''''''''''+++++###########++++++++++++++++++++++++';;'#++##+##+''''++++++++#########@@@@@@@@@###@@@@@@@@@@@################++++++#+##################################################@@@@@@@@#####++++++''';,```.,;;;:,,,,,,,,,::::::;;;;'''''''''#+;:::::::
;;;;;;;;;;;;;;;;''''''''''++++++###########+++'''''''''''''++++##########+++++++++++++++++++++++'';'''+++##++++'''''++++++######@@@@@@@@@@@@@@@@@@@@@@@@@@@@##############+++++#++#+#################################################@@@@@@@@#####++++'+''';. `,'';:,,,,,,,,,,,:::::;;;;;;''''''''##+';;:;;:
;;;;;;;;;;;;;;;;''''''''''++++++##########++++'''''''''''''+++++##########++++++++++++++++++++'';;;''++++##++''''''+++++#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###########++##++######################################################@@@@@@@@@#####++++''''';.`:''';:,,,,,,,,,,::::::;;;;;;''''''''+###';;;;;
;;;;;;;;;;;;;;;'''''''''''+++++###########+++'''''''''''''''++++##########+++++++++++++'++++''';;;'++++++##+''''''+++++#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###########+####+++####################################################@@@@@@@@@######+++''''':.:'+';,,,,,,,,,,,:::::::;;;;;;''''''''+###+;:;;;
;;;;;;;;;;;;''''''''''''''+++++###########++'''''''';;'';'''++++##########+++++++++++++'+++'';;;''+++++++++'''''++++++#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###############+++++####################################################@@@@@@@@@######+++'''''::'';;:,,,,,,,,,::::::::;;;;;;;'''''''''+##+;;;;;
;;;;;;;;;;''''''''''''''''+++++###########++'''''''';;;;;'''++++#######+###+++++++++++++++'';;'''++++++++'''''''++++####@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@##################+++++#####################################################@@@@@@@@@######+++''+'';'';;::,,,,,,,,,:::::::;;;;;;;'''''''''++##+';;;;
;;;;;;;;''''''''''''''''''+++++###########++'''''''';;;;;''''+++###########++++++++++++++''''''++++++++''';;''''++#####@@@@@@@@@###@@@@@@@@@@@@@@@@@@####################++'+++#####################################################@@@@@@@@@######+++'''''''';::::,,,,,,,::::::::;;;;;;;'''''''''+####';:;;
;;;;;;;;''''''''''''''''''++++++##########++'''''''';;;;;''''++++##########+++++++++++++'''''++++++++'''';;'''+++#####@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@####################+++++######################################################@@@@@@@@@#####++++'''''''';::::,,,:,,,::::::::;;;;;;'''''''''''+###+;;;'
;;;;;;;;'''''''''''''''''+++++++##########++'''''''';;;;;''''+++####+++#####++++++++++'''''++++##+++'';;;;''+'++###@@@@##@@@@@##@@@@@@@@@@@@@@@@@@@@@###############################################################################@@@@@@@@@#####++++'+'''';::::::::,,,,,::::::::;;;;;'''''''''+';+####';;;
;;;;''''''''''''''''''''''+++++++#########++''''''';;''';;'+'++#+;,,....,:'+#+++++++++''''+++##+++''';;;''+++++####@@@@@@@@#####@@@@@@@@@@@@@@@@@@@#################################################################################@@@@@@@@@#####++++'''''';::::::,,,,,,,:::::::;;;;'''''''''''++;+#+##';:;
;;;'''''''''''''''''''''''+++++++#########+++''''''';;;;''''+++',`        .:'++++++++++''+++++++'';;;;''''+++#####@@@#@@@@###@@@@@@@@@@@@@@@@@@@@@##################################################################################@@@@@@@@@#####++++'''''';::::::,,,,,,::::::::;;;;''''''''''''+;+####+;;;
;;'''''''''''''''''''''''''++++++#########++++''''''';;;'''+#+:.``     ``  `.:;+###++'''++++++'';;;;;''''+++####@@@@@#@@@@#@@@@@@@@@@@@@@@@@#@@@####################################################################################@@@@@@@@@#####++++''''''::,:::,,,,,,:::::::;;;;;;''''''''''''+''+####;;;
'''''''''''''''''''''''''''+++++##########+++++'''''''''''+#+:`               .,;'++''''++++''';;''''''+++####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@####################################################################################@@@@@@@@######++++''''';:,,:::,,,,::::::::;;;;;;;''''''''''''+''+#+##';;
'''''''''''''''''''''''''''''++++##########+++++''''''''++++:`  `   ``          `,;'''''++''''''''''''+++###@@@@##@@@#####@@@@@@@@@@@@@@@@@@@#######################################################################################@@@@@@@@######++++''''';:,,::::,,,:::::::;;;;;;;;''''''''''''+';+#+##';;
''''''''''''''''''''''''''''''++++##########+++++'''''++++#'.           `        .:;;''+++'''''''''''+++##@@@@@@#############@@@@@@@@@@@@@@@########################################################################################@@@@#@@@######++++'''';::,:::::,,,::::::;;;;;;;;;''''''''''''++;+####+';
'''''''''''''''''''''''''''''''+++###########++++++++++++#',                  .,:;'''++++'''''''''''++##########@@#@#########@@@@@@@@@@@@@##########################################################################################@@@@##@@######++++'''';:,,::::::,,:::::;;;;;;;;''''''';;'''''++'+#####';
''''''''''''''''''';;;';;'''''''++#############+++++++++##:`                 `:'''''+++'''''''''''++########@@@@@@@@@@@###+##@@@@@@@@@@@###########################################################################################@@@@@##@@######+++''''';:,:::::::,:::::;;;;;;;;''''''';;;;''''++'+#####+;
'''''''''''''''''''';;;;;;;;''''++##############+#+++++##'.                 .:'+++++++''''++''''+++#######@@@@@@@@@@@@@@######@@@@@@@@@@############################################################################################@@@@@@@######++++'''';:,,::::::::::::;;;;;;;;''''''''';;;''''''++#####+'
''''''''''''''''''';;;;;;;;;;;''+++###############+++++##;` ```         ` `.,;'+'+++''';''''''++++######@@@@@@@@@@@@@@@@@@######@@@@###############################################################################################@@@@@@@@######++++'''';:,,::::::::::::;;;;;;;'''''''''';;;'''''++++#####'
'''''''''''''''''';;;;;;;;;;;;;''++###############++##+#':.`````  ``    ` .,;'+++++'';;;'''''+++########@@@@@@@@@@@@@@@@@@@#####@@@################################################################################################@@@@@@@@######++++''';:,,,::;:;::::::;;;;;;;''''''''''';''''''+++++#####+
'''''''''''''''''';;;;;;;;;;;;;'''++############+#++##++;:,.```````````` `,;;;'+++'';;;;''''+++#########@@@@@@@@@@@@@@@@@@@@###########+###########################################################################################@@@@@@@@######++++''';:,,:::;;;;;:;;;;;;;;''''''''''''''''''''+++++######
'''''''''''''''''';;;;::;;;;;;;;''++############+##+++++;,.``````````````,;'';''+';;;;;';''+++#########@@@@@@@@@@@@@@@@@@@@@@###+++####+################################@###########################################################@@@@@########++++''';:,::::;;;;;;;;;;;;;'''''''''''''''''''''++++++#####
'''''''''''''''''';;;:::::;;;;;;;''++############+#+++#+',``..``````````.:''';;'';;;;;;';'+#############@@@@@@@@@@@@@@@@@@@@@###+####################################@@@@@@#########################################################@@@@@########++++'';:,,::::;;;;;;;;;;;''''''''''''''''''''''''++#++#####
'''''''''''''''''';;;::::::;;;;;;''++############+++++#+;,,...`````.````,'''';;;;;;;;;;''++##########@@##@@@@@@@@@@@@################################################@@@@@@@@@@@####################################################@@@@@########++++'';:,,::::;;;;;;'''''''''''''''''''''''''''''++#++#####
;;;''''''''''''''';;::::::::::;;;;'++###########+++++++'::,...`.```````.:++'';;;;;;;;;'+++##########@@@@##@@@@@@@@@@@################################################@@@#@@@@@@@####################################################@@@@@########++++'';,,:::::;;'''''''''''''''''''''''''''''''+'+##++#####
;;;''''''''''''''';;:::::::::::;;;'++###########++++#+,,,,,,.........`.,;++''';::;;;'''+++##########@@@@###@@@##@@#####################################################@@@@@@@#####################################################@@@@@#@@#####+++++';:,::::::;;''''''''''''''''''''''''''''''''+##+++#####
;;;;;;;;''''''''';;;::::::::::::;;'++###########++++++,,::,,,......`.`.:'#+'';;:;;;'''++++#########@@@@@@###@@@@@#######################################################@@@@@@#####################################################@@@@@#@@#######+++':,:::::::;;'''''+''''''''''''''''''''''''''+####++####
;;;;;;;;;;;;;;;;;;;::::,:::::::::;'++##########+++++++;;;;,,,......`...:+#';;;::''''''++++########@@@@@@@@##@@@@########################################################@@@@@@#####################################################@@@@@#@@#######++';:,:::::::;;''+++++++++++''''''''''';;''''''+#+##++####
;;;;;;;;;;;;;;;;;;;:::,,,,,::::::;'++##########++++++++#';:,,,,....`..,;++';;:;''''''++++########@@@@@@@####@#########################################################@@@@@@@@#####################################################@@@@@#@@######+++';:,:::::::;;'+++++++++++++''''''''''''''''''#+;++''####
;;;;;;;;;;;;;;;;;;:::,,,,,,::::::;'++#########+++++++++++'::,,,.......,;++;;;;'''''''++++########@@@@@@@#@@@@########################################################@@@@@@@@@######################################################@@@##@@#####++++':::::::::;;;'++++++++++++++'''''''''''''''''#+'+':'####
;;;;;;;;;;;;;;;;;;:::,,,,,,::::::;''+##########++++++++++';:,,,.......,;#';;''''''''+++++#########@@@@@@#@@@@########################################################@@@@@@@@@######################################################@@@##@@#####+++';::::::::::;;'++++++++++++++''''''''''''''''++###':'###@
;;;;;;;;;;;;;;;;;;:::,,,,,,:,,:::;''+##########+#+++++#+++;::,,.......,;+';''''''+++++++#############@@@@@@###########################################################@@@@@@@@######################################################@@@##@@#####+++';::::::::::;;'+++++#+++++++'''''''''''''''''+#@@+;:'####
;;;;;;;;;;;;;;;;;;:::,,,,,,,,,:::;;'+###########++++++++++';:::.,.....,;'''+''''++++++++################@@#########@####################################################@@@@@@#####################################################@@@@@#@@#####+++;:::;;;;::::;;'++#+###+++++'''''''''''''''''++#@#';:;+###
;;;;;;;;;;;;;;;;;;:::,,,,,:::::::;''+#########++++++++++++';::,,,,....,;++''+'+++++++++##########@@#####@##############################################################@@@@@@@@@####################################################@@@@@@@@####+++';;;;;;::::;;;'+++++++++++++'''''''''''''''''+@@':;;:'#+#
;;;;;;;;;;;;;;;;;;:::,,,,,:::::::;''+#########+++++++++++#+';::,,,.....:'+'+++++++++++###########@###@@####++##########################################################@@@@@@@@@#####################################################@@@@@@#####++'';;;;;;::::;;;'++++++#++++++'''''''''''''''++@@#';;;:;###
;;;;;;;;;;;;;;;;;;:::,,:::::::::;;''+############++++++++##';::,,,.....:'''++++++++#############@@##@@@#++++++########################################################@@@@@@@@@######################################################@@@########++'';;;;;;;;;;;;;'+++####+++++''''''';''''''''+##+';;;;;,+##
;;;;;;;;;;;;;;;;;;:::::::::::::;;;'++############+++++++###+;::,,......,;''+++++++##############@@@@@@##+++++#########################################################@@@@@@@@#######################################################@@@########++';;;;;''''''''''++++++++++++'''''';;'''''''''+'';;;;;;,;##
;;;;;;;;;;;;;;;;;;;:::::::::::;;;''++#############+++++#####':::,......,;''++++++#################@@##+++++++########################################################@@@@@@@@@@#################################################################++';;'';''''''''''+++++++++++'''''''';'''''''''';;;;;;;;::+#
;;;;;;;;;;;;;;;;;;;;::::::::;;;;;'+++##############+++######';:,........:''+++++################@@@@#+++++++++#######################################################@@@@@@@@@@@@###############################################################+'';'''''''+++++++++'''''''''''''''''''''''''''';;;;;;;;;;'#
;;;;;;;;;;;;;;;;;;;;:::::::;;;;;''+++###############+#######+;,.........:'++++++#############@#@@@##++'++++++++######################################################@@@@@@@@@@@@@##############################################################+'''''''+++++++++++''''';;;''''''''''''''''''''''';;;;;;;''+
'''''';;;;;;;;;;;;;;::::::;;;;;;''++++#######################',.........:'++++++############@@@@#+++''++++++++#######################################################@@@@@@@@@@@@@##############################################################++'''''++++++++++++''''''';;'''''''''''''''''''';;;''''';#';
'''''''';;;;;;;;;;;;;;:;;;;;;;''''+++++++####################',..`..,,..:'+++++##########@@#@@##+::''+++++++++########################################################@@#@@@@@@@@####@#########################################################+++'''+++++++###++++''''''';;'''''''''''''''''''''''''''''++'
''''''''''''''''''';;;;;;;;;;;''''''+++++++########+++++#+###+:..`..,,..,;+++++############@@##+',:'+''++++++++######################################################@@@@@@@@@@@@@############################################################++++'''++++++#####+++''''''''''''''''''''''''''''''''''''''+##
''''''''''''''''''''';;;;;;;;''''''''''''++++#++++++++++#+###+;.....,,,..:++++##################'.:+++'+++++++++#####################################################@@@@@@@@@@@@####+++++++##################################################++++'''++++++#####++++'''''''''''''''''''''''''''''''''+''''+#
''''''''''''''''''''''''''';;;;;;;;;;;''''++++++++++++++++++##;......,,..:'#++##############++##;.;+'+'++++++++++####################################################@@@@@@@@@@####++++++++++++#########################+####################+++++'''+++++++#####+++'''''''''''''''++''''''''++++++++++'+'+#
''''''''''''''''''''''''''';;;;;;;;;;;;;'''+++++++++++++++++++;......,,,.,;##+##############++##;,;''+'++++++++++++###################################################@@@@@@@@#####++''''''''+++++###############++++++++++##################+++++'''++++++######++++'++++''''''++++++''''''+++++++++++++'+#
''''''''''''''''''''''''''';;;;;::::::;;;;'''+++++++++++++++++'......,:,,,;+###############++#@#,.;+'+'+++++++++++++################++++++########################################++'''''''''''++++++++####++++++++++++++++++###############++++++'''++++++######+++++++++++++++++++++'''''++++++++++++++'++
'''''''''''''''''''''''''';;;;:::::::::::;;;'''+++++++++++++++'...,..,::,,:;+#############+++@#'.,'+'''+++++++++++++++++###########+++++++++++++################################+++''';;;;;;;''''++++++++++++++++++'''''''''+++#############++++++';'+++++#######+++++++++++++++++++++'''''+++##+##+++++++++
''''''''''''''''''''''''';;;::::::::::::::;;''++++++++++++++++'...,,.,::::,:'################@'..;+++++'++++++++++++++++++########+++++++++++++++++++++++++##+++###############++''';;;;;;;;;;;;''++++++++++++++''''';;;;;'''+++###########+++++++';''++++#######++++++#++++++++++++++''''+++##########+++++
'''''''''''''''''''''''';;;;:::::,,,,::::::;;''+++++''+''+'+++;...:,..,:::,,:+###########+###;,`.,:,,,;'+''++'+++++++++++++######++++++++++++++++++++++++++++++++++++########++''';;::::::::::;;;''+++++++++++'''';;;;;;;;;;''+++######++++++++++'';''+++##########+++++++++##+++++++++'''++##########++++++
'''''''''''''''''''''''';;;::::,,,,,,,:::::;;'''+++''''''+'+++;..,:...,:;;:::;'#@@#########+:.```` ``,;++''+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++#+++'';;;::::::::::::;;'''+++++++++'''';;;;;::::;;;'''++#####++++++++++'';''+++############+++++++####+++++++'''++##########++++++
;''''';''''''''''''''';;;;;::::,,,,,,,,:::::;;'''++''''''''+++;``,:...,,:;;;:::'+##@@#####+:..,,,,,:;;'+'''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'';;;:::,,,,,,,::::;;'''+++++'''''';;:::::::::::;;'++++###++++++++++'';''+++#############++++++####+++++++''+++##########++++++
;;;;;;;;;;;;;;;;;;''';;;;;;::::,,,,,,,,,::::;;''''''''''''''++:``,:.,.,,:;';;;;;;'+#@@##@+;,,:;;;'++++'''''++'''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'';;;:::,,,,,,,,,,:::;;''''+'''''';;;::::::,,,,:::;;''+++#++++++++++''';;'+++##############++++++##++++++++''++##########++++++#
;;;;;;;;;;;;;;;;;;;';;;;;;::::,,,,,,,,,,::::;;'''''''''''''''':`.::.,.,,,;';;';;;;;'+#@@@':,:;'''''''''''''''''''+'++++++++++++++++++++'''''''''''''''''''''''+++++++++++++''';;::::,,,,,,,,,,:::;;'''''''''';;;::::,,,,,,,,,::;;''++++++++'''''''';;'+++###############+++++++++++++++''++#######+++++++++#
;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,,::::;;;''''''''''''''',`.;:.,,,,,;;;;;;;;;;;;+@@+;:::;;'''''+'''''''''''''''++++++++++++++++++''''''''''''''''''''''''''''''''++++''';;;:::,,,,,,,,,,,::::;;''''''''';;;::,,,,,,,,,,,:::;;''+++++++'''''''';;'+++################++++++++++++++'+++##+++++++++++'++#
;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,,,::::;;;'''''''''''''';.`,',.,,,,,:;;;;;;;;;;;+@@';:;;;;'''''''''''''''''''''''++++++++++'''''''''''''''''''''''''''''''''''''''''''';;;::::,,,,,,,,,,,::::;;''''''''';;:::,,,,,,,,,,,,::;;''++++++''''''''';;'+++#################+++++++++++++++++#++++++++++++'++#
;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,:::::;;''''''''';''''';``,',.,,,:::::;;;;;;;;;+@#';;;;;;'''''''''''''''''''''''''++++'''''''''''''''''''''''''''''''''''''''''''''''';;;::::,,,,,,,,,,,::::;;'''''''';;;:::,,,,,,,,,,,,::;;'''+++++'''''''';;;'++###################++###++++++++++##+++++++++++'++##
;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,,,::::;;;;''''''';;'';';,``:+..,:::::::;;;;;';;'+#+;;;';:;';'';'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;::::,,,,,,,,,,,::::;;'''''''';;:::,,,,,,.,,,,,,::;;;''''''''''''''';;;'+++######################++++++''+++++++++'++'++'''+##
;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,:::::;;;;''''''';;';;';, `''.,,:::::::;;;;;';'''+';;'';:;;';''';;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;::::,,,,,,,,,,,::::;;;''''';;;;:::,,,,,,.,,,,,,::;;;''''''''''''''';;;'+++##########++++########++++++''++++++++''+'''''''+##
;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,:::::;;;;;';;;'';;;;;;;:. .#:.,,:::::;;;;;;;;;'''';:';;';::'';''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;:::::,,,,,,,,,,,::::;;;'''';;;;;:::,,,,,,.,,,,,,::;;;'''''''''''''';;;;'++++########++++++##+####++++++''++++++'''''''''''+###
;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::;;;;;;;;;;;;;;;;;;;,``:#,.,,,::::;;;;;;;;;''';;;';;'':,;;';;''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;'''';;;;;;;:::::,,,,,,,,,,::::;;;;;;;;;;;;;:::,,,,,,,,,,,,,::;;;;''''''''''''';;;;'++++########++++#########++++++''++++'''''''''''''+###
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::;;;;;;;;;;;;;;;;;;;;. .''...,,::::;;;;;;;;;''';:;;;;'';,,:'';;;;;;;''''';;;'''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,,,:::::;;;;;;;;;;;;;;::::,,,,,,,,,,,,:::;;;''''''''''''';;;;''+++++++++##+++###########++++''''+'''''''''''';;'+###
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;. :#:`.`,,,::::;;;;;';;'''::;;;;'';:,,:;'';;;;;;;;;;;;;;;;;;;;'''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,::::::;;;;;;;;;;;;;;::::,,,,,,,,,,,::::;;;''''''''''''';;;;''++++++++++++++##########+++++'''''''''''''''';;;'####
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;``'#,`..,,::;;;;;;;;';;;';::;;;;'';;;,,:;';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::;;;;;;;;;;;;;;;;;::::,,,,,,,,,,:::;;;;'''';';;;;;;;;;;;''++++++++++++++#########++++++'''''''''''''''';;'+####
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'::`.##:.,::::;;;;;;;;'';;;';,:;;;;'';;;:,:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;;;;;;;;;;;;;::::,,,,,,,,::::;;;;'';;;;;;;;;;;;;;;'++++++++++++++##########+++++''''''''''';;''''';'+####
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::..+@++'';;;;;;;;;;;''';'';::;;;;'';;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;::::::,,,,,:::::;;;;;;;;;;;;;;;;;;;;'''++++++##+##+++#####+++++++++''';''''''''';'';;;+#####
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;..'###+;:::;;;;;;'''''';;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;;'';;;;;;;'''+++++###+########+++++++++++'';;''''''''';;;';;'#####
;;;;;;;;;;;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;,`,:;:,,,:;;;;;;;;;;''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;;;;;;;;;;;;;;;;'''+++++###+######+++++++++++++'';;;'''';;;;';;':;+#####
:::::::::::::::::::::::::;;;;:::::::::::::::::;;::;;;;::;:;':,`.,..,:;;;;;;;;;;;'';;;';;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::;;;;;;;;;;;;;;;;;;;;;;;;'''+++++###+######+++++++++++++';;;;;;;;;;;;;:;+:'######
::::::::::::::::::::::::::::::::::::::::::::::::::::::::;:''';..,,::::;;;;;'';'';;;'+';:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++##+######++#++++++++++';;;;;;;;;;;;;:'@#+##@@##
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::;+++';:,,:::;;;;;;;;;;;;;'+#'::;::::::::;;;:::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++##+######++++++++++++''';:;;;;;;;;;;,:+;;;'##@@
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::;+#++'';;:::;;;;;;;;;;;''+##'::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;:::;:;:;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''+++++++###########++++++++++'';:::;;;;;;;;;;:;,,,,:'+@
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::;+####++'';;;;;;;;;;;''+###+;::::::::::::::::::::::::::::::::::::::;;;;::::::::::::::::::::::::;;;;;;;;::::;;;;;;:;;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'++++++++###########++++++++++'';,,:;;;;;;;;::;';,.,,:'+
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::;+#######+++''''''+++######+;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;:;;;;;:::::::;;;;;;;;;;;;;;;;;:::::;'++++++++#########++##+++++++++':,.:;;;;;;;;;:'#@+:,,;';
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::;+#####@@##############@###+;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;:::::;;;''+++++++##+######++#++++++++';:,..,:;::;;:::'##@@+;:'''
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::;+#######@@@@@@@@@@@@@#@###+;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;''+++++++##+++##+++++++++++''::,...,:::::::;'+###@@+::;+
:::::::::::::::::::::::::::::::::::::::::::::::::::::::;:;+######@@@@@@@@@@#########+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,,,:'++++++++#####+++++++++++';::,,,,..,::::;''+######@@'::'
:::::::::::::::::::::::::::::::::::::::::::::::::::::;;;:;+#####@@@@@@@#@@@@########':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,...,:;+++++++++++++++###+++'';:,,,,,,,..,::::'##+##@@#@@@+:,,
:::::::::::::::::::::::::::::::::::::::::::::::::::::;;;:;'#######@@@@@@@@##########'::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,.`.,,,:''++++#####++++++'';;:::,,,,,,,...,:,:'+#####@###@@@#':
:::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;::'######@@@###@##+++#######;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,.`.,,,:;;'+'''+++++++';;::,,:::::,,,,....,,,'##++########@#@@#
::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;::'#@@@#@@@#+''+'''+#######+:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,..,,,::;;;:,,:::::::::::::::::,,,,,,,,,.,,;#@++##+#######@@@@
::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;:;+####@@@#';;;'+#########+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,.`.,,,,;;;':..,,,:::::;;;;:::,,,,,,,,,,...,'###++#+++###+##@@@
::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;::'##@@@###++++###########':::;;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,.``.,,,,::;':,,:::;:;;;;;::::,,,,,,:,,,,...,'###+++++'+##++##@@
:::::::::::::::::::::::::::::::::::::::::::::::::::;;:::;::'###@@######@###@#######':::;;;;;::;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,.`.,,,,,::;:,,:::::;;:::::,,,:::,,,,,,...,.;####++#++'++++###@
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::'#@##@##@@#@@####@#####+;:::;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,,,,,,:;;;:,::::::::::::::::::,,,,,,.....:++##++##+++++#####
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::'#@##@##@##############':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,,,,,::;;::::::::,,:::::::::,,,,,.,,..`,;;;++''##++#####@@#
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::'+#@@@#@@@#@##########+;,:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,...,,:;;:,::::::::::::::::,,,,,,,,,.`.'':;#+''+###########
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;'#@@#@@@@@@####@####':,:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,...,,,:::::::::::::::,::::::,,,,,,..,;'';'+++''+##########
,,,,,,,,:::::,,,,,,:::::,,,::::::::::::::::::::::::::::::,::,;#@@@@@##@#@@@@##@##',,:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,..,.,,:::::::::::::::,,,,::,,,,,..:;';'##+++''++#########
,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::,,,,,,,::::::::,,:::::::::,,:'#@@@#@@#####@####':,::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,..,,,,,,,,::::::::::,::,:,,:,:,,,:;;:;'++++++'+######+###
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::,,,,,,,,,,,,,,,,,,,:::::,,,,,,;+@@@##@####@#####;,,:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,:::,,,,,::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,,.,,,,,,,:::::::::::,,,,,,,,:,,,:;';:,'+'''###+++####++###
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,:;#@@@@@@###@##@#',,,:::::::::::::::::::::,:,:,:::::::::::::::::::::,,,,,,::::::::::::::::::::::::::,,,:::,,,,,,,,,,,,,,,:::::::::,,,,,,,,,,,,:::::::::::::::::::::::::::::::::::::,,,,,,,,,,,:::,,::,,,,,,,,,,,,,,,;''';:'++''+####+###+++##@
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:+#@@#@@@####@#+:,,,:::,:,,,,,,,,,,,,,,,,,,,,::::,,,,,::::::,,,,,,,,,,,,,,,,,,,,,::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::::::::::::::::::::::::,,....,,,,,,,,,,,,,,,,,,,,,,,,,:;'';;'++'++'''+############@
:::::::::::,,,,,,,,,,,::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;+#@@@@#@@@##+;,,:,,::,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::,,,,,,....,,,,,,,,,,,,,......,,,,::;'+'::'+#+++++++###########@#
:::::::::::::,,,,,,,,:::::::::::::,,,,,,,,,,,,,,,:::,,,,,,,,,,,,,;+#@@@@@@@#+;:,,:,,::,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,....,,,,,,,,,.........,,,,:;;';;::;++++####++####++#######
::::::::::::::::,,,,,:::::::::::::::::::,,,,,,,:::::,,,,,:,,,,,,,:;+###@##+';:,,::,,::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,:::,,,,,,,,,,,,,,,,,,,,,,,,,,,.``.....,,,....``....,,,,:,:;:;;:,:+#++++###++###++########
::::::::::::::::,,,,:::::::::::::::::::::::,::::::,,,,,,,:,,::,,,,,:''+++';:,,:::::::::::,,,,,,,,,,,::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::,,,,,,,,,,,,,,,,,,,,,,,,:::,,,,,,,,,,::,,,,,,,,,,,,,,,.```...............,,,,,,::;'::'';'+++++###################
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,::::::,::::;::,:::::,::::::::::,:,:::::::::::::::,,,,:::::::::::::::::::::::::::::::::::::::::::,,,,,,,,,,,,,,,,,,,,,,,:,:::::::,,,,,,,,,,,,,,,,,,,,,:::::::,,,,,,,,,,,,,,,,,,,,,,,,,.``````.`````...,,,,,,::::;;::,;#++#++++++#####+###########
::::::::::::::::::::::::::::::::::::::::::::::::::::::::,:::::::::::,,::::::::::,::::::::::::,::::::::::::::::,,,::::::::::::::::::::::::::::::::::::::::::::,,,,,,,,,,,,,,,,,,,,,,::::::::::,,,,,,,,,,,,,,,,,,,::::::::,,,,,,,,,,,,,,,,,,,,,,,,,.```````````...,,,,,,,,:::;;::,;+++#++++++####+++##########